sammon                 package:MASS                 R Documentation

_S_a_m_m_o_n'_s _N_o_n-_L_i_n_e_a_r _M_a_p_p_i_n_g

_D_e_s_c_r_i_p_t_i_o_n:

     One form of non-metric multidimensional scaling.

_U_s_a_g_e:

     sammon(d, y = cmdscale(d, k), k = 2, niter = 100, trace = TRUE,
            magic = 0.2, tol = 1e-4)

_A_r_g_u_m_e_n_t_s:

       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
          self-distance.  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. 

_D_e_t_a_i_l_s:

     This chooses a two-dimensional 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 scale-free.

     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 step-length search
     ('magic') to ensure that it always goes downhill.

_V_a_l_u_e:

     Two components:

  points: A two-column vector of the fitted configuration. 

  stress: The final stress achieved. 

_S_i_d_e _E_f_f_e_c_t_s:

     If trace is true, the initial stress and the current stress are
     printed out every 10 iterations.

_R_e_f_e_r_e_n_c_e_s:

     Sammon, J. W. (1969) A non-linear mapping for data structure
     analysis. _IEEE Trans. Comput._, *C-18* 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.

_S_e_e _A_l_s_o:

     'cmdscale', 'isoMDS'

_E_x_a_m_p_l_e_s:

     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)))

