sammon {MASS}  R Documentation 
One form of nonmetric multidimensional scaling.
sammon(d, y = cmdscale(d, k), k = 2, niter = 100, trace = TRUE, magic = 0.2, tol = 1e4)
d 
distance structure of the form returned by dist , or a full, symmetric
matrix. Data are assumed to be dissimilarities or relative distances,
but must be positive except for selfdistance. This can contain missing
values.

y 
An initial configuration. If none is supplied, cmdscale
is used to provide the classical solution. (If there are missing
values in d , an initial configuration must be provided.) This
must not have duplicates.

k 
The dimension of the configuration. 
niter 
The maximum number of iterations. 
trace 
Logical for tracing optimization. Default TRUE .

magic 
initial value of the step size constant in diagonal Newton method. 
tol 
Tolerance for stopping, in units of stress. 
This chooses a twodimensional configuration to minimize the stress, the sum of squared differences between the input distances and those of the configuration, weighted by the distances, the whole sum being divided by the sum of input distances to make the stress scalefree.
An iterative algorithm is used, which will usually converge in around
50 iterations. As this is necessarily an O(n^2) calculation, it is slow
for large datasets. Further, since the configuration is only determined
up to rotations and reflections (by convention the centroid is at the
origin), the result can vary considerably from machine to machine.
In this release the algorithm has been modified by adding a steplength
search (magic
) to ensure that it always goes downhill.
Two components:
points 
A twocolumn vector of the fitted configuration. 
stress 
The final stress achieved. 
If trace is true, the initial stress and the current stress are printed out every 10 iterations.
Sammon, J. W. (1969) A nonlinear mapping for data structure analysis. IEEE Trans. Comput., C18 401–409.
Ripley, B. D. (1996) Pattern Recognition and Neural Networks. Cambridge University Press.
Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. Fourth edition. Springer.
data(swiss) swiss.x < as.matrix(swiss[, 1]) swiss.sam < sammon(dist(swiss.x)) plot(swiss.sam$points, type = "n") text(swiss.sam$points, labels = as.character(1:nrow(swiss.x)))