get.limits: Infer lower and upper mode position limits to define robust end-members.
Description
This function identifies the lower and upper limits within which robust
end-members have clustered mode positions. It uses a kernel density estimate
of the mode positions of all input end-member loadings, clips it at a
user-defined minimum density and returns the resulting rising and falling
shoulders of the kde peaks as limits.
Numeric matrix, m loadings (rows) and n classes
(columns).
classunits
Numeric vector, optional class units
(e.g. micrometers or phi-units) of the same length as columns of X.
bw
Numeric scalar, bandwidth of the kernel, moved over the
data set. If omitted, the default value of 1
used.
threshold
Numeric scalar, threshold quantile which is used to
identify mode clusters. Only kde densities above this values are kept and
used to derieve mode cluster limits.
Value
Numeric matrix with lower and upper mode limits.
Details
Note that the threshold above which a mode cluster is identified is an
arbitrary, user-defined value and probably needs to be adjusted iteratively
to get reasonable results. The default value may or may not be adequate!