fastermds {fmds} | R Documentation |
Stochastic Iterative Majorization Multidimensional Scaling Function
Description
fastermds
performs multidimensional scaling using a stochastic iterative majorization algorithm.
The data are either dissimilarities (full or only lower triangular part) or multivariate data.
The dissimilarities and the weights may not contain negative values.
The configuration is either unrestricted or (partly) fixed.
Local multidimensional scaling is performed when a boundary is provided.
Interval multidimensional scaling is performed with a full dissimilarity matrix,
using the lower triangular part for the lower bound and the upper triangular part for the upper bound.
Usage
fastermds(
delta = NULL,
lower = NULL,
data = NULL,
w = NULL,
p = 2,
z = NULL,
fixed = NULL,
linear = FALSE,
boundary = NULL,
interval = FALSE,
NCYCLES = 32,
MINRATE = 0.01,
error.check = FALSE,
test = 0
)
Arguments
delta |
dissimilarity matrix, non-negative, square, and hollow. |
lower |
lower triangular part of dissimilarity matrix. |
data |
multivariate data matrix. |
w |
non-negative weights per dissimilarity for delta and lower, and per object for data |
p |
dimensionality (default = 2). |
z |
n by p matrix with initial coordinates. |
fixed |
n by p matrix with booleans indicating free (FALSE) or fixed (TRUE) coordinates. |
linear |
boolean indicating whether linear is used. |
boundary |
boundary value for local mds. |
interval |
interval measurements for interval mds, requires delta data format. |
NCYCLES |
number of cycles taken by the algorithm (default = 32). |
MINRATE |
criterion rate of convergence (default = 0.01). |
error.check |
extensive validity check input parameters (default = FALSE). |
test |
indicates which test is applied. |
Details
One of the following three data formats need to be specified:
Value
n by p matrix with final coordinates.
Author(s)
Frank M.T.A. Busing
References
Agrafiotis, and others, and Busing
Examples
n <- 1000
m <- 10
delta <- as.matrix( dist( matrix( runif( n * m ), n, m ) ) )
p <- 2
zinit <- matrix( runif( n * p ), n, p )
# r <- fastermds( delta = delta, p = p, z = zinit, error.check = TRUE )