initMDS                package:vegan                R Documentation

_R_a_n_d_o_m _S_t_a_r_t _a_n_d _A_x_i_s _S_c_a_l_i_n_g _f_o_r _i_s_o_M_D_S

_D_e_s_c_r_i_p_t_i_o_n:

     Function 'initMDS' gives a random  start for multidimensional
     scaling, and 'postMDS' performs some post-standardizations for
     multidimensional scaling, in order to make the configurations
     easier to interpret

_U_s_a_g_e:

     initMDS(x, k=2)
     postMDS(X, dist, pc=TRUE, center=TRUE, halfchange=TRUE, threshold=0.8,
             nthreshold=10, plot=FALSE)

_A_r_g_u_m_e_n_t_s:

       x: Dissimilarity matrix for isoMDS.

       k: Number of dimensions.

       X: Configuration from multidimensional scaling. 

    dist: Dissimilarity matrix used in multidimensional scaling. 

      pc: Rotate to principal components. 

  center: Centre the configuration. 

halfchange: Scale axes to half-change units.

threshold: Largest dissimilarity used in half-change scaling. 

nthreshold: Minimum number of points in half-change scaling. 

    plot: Show half-change scaling plot.

_D_e_t_a_i_l_s:

     Non-metric Multidimensional Scaling (NMDS) is commonly regarded as
     the most robust unconstrained ordination method in community
     ecology (Minchin 1987).  Functions 'initMDS' and 'postMDS'
     together with some other functions are intended to  help run NMDS
     in 'isoMDS' like recommended by Minchin (1987)  - NMDS is not a
     strong choice unless used correctly:

        1.  You should use a dissimilarity index that has a good rank
           order relation with ecological gradients.  Function
           'rankindex' may help in choosing an adequate index. Often a
           good _a priori_ choice is to use Bray-Curtis index, perhaps
           with 'wisconsin' double standardization.  Some recommended
           indices are available in function 'vegdist'.

        2.  NMDS should be run with several random starts.  It is
           dangerous to follow the common default of starting with
           metric scaling ('cmdscale'), because this may be close to a
           local optimum which will trap the iteration.  Function
           'initMDS' provides such random starts.

        3.  NMDS solutions with minimum stress should be compared for
           consistency.  You should be satisfied only when several
           minimum stress solutions have similar configurations. In
           particular in large data sets, single points may be unstable
           even with about equal stress.  Function 'postMDS' provides a
           simple solution for fixing the scaling of NMDS.  Function
           'procrustes' provides Procrustes rotation for more formal
           inspection.

     Function 'postMDS' provides the following ways of ``fixing'' the
     indeterminacy of scaling and orientation of axes in NMDS: Centring
     moves the origin to the average of each axis.  Principal
     components rotate the configuration so that the variance of points
     is maximized on first dimensions. Half-change scaling scales the
     configuration so that one  unit means halving of community
     similarity from replicate similarity. Half-change scaling is based
     on closer dissimilarities where the relation between ordination
     distance and community dissimilarity is rather linear; the limit
     is controlled by parameter 'threshold'.  If there are enough
     points below this threshold (controlled by the the parameter
     'nthreshold'), dissimilarities are regressed on distances. The
     intercept of this regression is taken as the replicate
     dissimilarity, and half-change is the distance where similarity
     halves according to linear regression.  Obviously the method is
     applicable only for dissimilarity indices scaled to 0 ... 1, such
     as Kulczynski, Bray-Curtis and Canberra indices.

_V_a_l_u_e:

     Function 'initMDS' returns a random configuration which is
     intended to be used within 'isoMDS' only.  Function 'postMDS'
     returns the result of 'isoMDS' with updated configuration.

_A_u_t_h_o_r(_s):

     Jari Oksanen

_R_e_f_e_r_e_n_c_e_s:

     Minchin, P.R. (1987)  An evaluation of relative robustness of
     techniques for ecological ordinations. _Vegetatio_ 71, 145-156.

_S_e_e _A_l_s_o:

     'isoMDS', 'cmdscale', 'procrustes'.

_E_x_a_m_p_l_e_s:

     ## The recommended way of running NMDS (Minchin 1987)
     ##
     data(varespec)
     data(varechem)
     library(MASS) ## isoMDS
     library(mva)  ## cmdscale: default start to isoMDS
     # Select a good dissimilarity index
     rankindex(scale(varechem),varespec)
     rankindex(scale(varechem),wisconsin(varespec))
     vare.dist <- vegdist(wisconsin(varespec), "bray")
     # Get the baseline solution: start with cmdscale
     mds.null <- isoMDS(vare.dist, tol=1e-7)
     ## See if you can get any better.
     repeat{
       mds.1<- isoMDS(vare.dist, initMDS(vare.dist), maxit=200, trace=FALSE, tol=1e-7)
       if(mds.1$stress < mds.null$stress) break
     }
     # Scale solutions ("fix translation, rotation and scale")
     mds.null <- postMDS(mds.null, vare.dist)
     mds.1 <- postMDS(mds.1, vare.dist)
     # Compare solutions
     plot(procrustes(mds.1, mds.null))

