stop_isomap1: STOPS version of isomap to optimize over integer k.

View source: R/stop_isomap.R

stop_isomap1R Documentation

STOPS version of isomap to optimize over integer k.

Description

Free parameter is k.

Usage

stop_isomap1(
  dis,
  theta = 3,
  type = "ratio",
  weightmat = NULL,
  ndim = 2,
  init = NULL,
  stressweight = 1,
  structures = c("cclusteredness", "clinearity", "cdependence", "cmanifoldness",
    "cassociation", "cnonmonotonicity", "cfunctionality", "ccomplexity", "cfaithfulness",
    "cregularity", "chierarchy", "cconvexity", "cstriatedness", "coutlying",
    "cskinniness", "csparsity", "cstringiness", "cclumpiness", "cinequality"),
  strucweight = rep(1/length(structures), length(structures)),
  strucpars,
  verbose = 0,
  stoptype = c("additive", "multiplicative"),
  itmaxi = NULL
)

Arguments

dis

numeric matrix or dist object of a matrix of proximities

theta

the number of shortest dissimilarities retained for a point (nearest neighbours), the isomap parameter. Must be a numeric scalar. Defaults to 3.

type

MDS type. Is "ratio".

weightmat

(optional) a matrix of nonnegative weights

ndim

number of dimensions of the target space

init

(optional) initial configuration

stressweight

weight to be used for the fit measure; defaults to 1

structures

which structuredness indices to be included in the loss

strucweight

weight to be used for the structuredness indices; ; defaults to 1/#number of structures

strucpars

the parameters for the structuredness indices

verbose

numeric value hat prints information on the fitting process; >2 is extremely verbose

stoptype

How to construct the target function for the multi objective optimization? Either 'additive' (default) or 'multiplicative'

itmaxi

placeholder for compatibility in stops call; not used

Details

Currently this version is a bit less flexible than the vegan one, as the only allowed parameter for isomap is the theta (k in isomap, no epsilon) and the shortest path is always estimated with argument "shortest". Also note that fragmentedOK is always set to TRUE which means that for theta that is too small only the largest conected group will be analyzed. If that's not wanted just set the theta higher.

Value

A list with the components

  • stress: Not really stress but 1-GOF[2] where GOF is the second element returned from smacofx::cmdscale (the sum of the first ndim eigenvalues divided by the sum of all absolute eigenvalues).

  • stress.m: default normalized stress (sqrt explicitly normalized stress; really the stress this time)

  • stoploss: the weighted loss value

  • indices: the values of the structuredness indices

  • parameters: the parameters used for fitting

  • fit: the returned object of the fitting procedure

  • stopobj: the stopobj object


stops documentation built on Dec. 12, 2023, 3:02 a.m.