distshape() now computes by default the dissimilarity of Sottile and Adelfio
(2019, eq. 1): concordance of the signs of the second derivatives and
product of the shape and distance components, integrated with the
trapezoidal rule on the actual grid p. Version 0.3.x used the first derivative
and the mean of the two components on the grid (1:n)/n; use legacy = TRUE
(or deriv = 1, combine = "mean") to reproduce it.
clustEff(): the number of clusters is selected by default with the largest gap
between the heights of the dendrogram (criterion = "height"); the criteria of the
paper ("pi.out", "dist.rel") and the silhouette (default of 0.3.x, used with
legacy = TRUE) are options. The default alpha is 0.25 with confidence bands
(effects curves) and 0.5 otherwise, as suggested in the paper.
'fda', 'ggplot2' and 'ggpubr' are no longer used: the functional PCA of fpcac()
is computed internally on a B-spline basis (fpca_bspline()), graphics use base R;
'qrcm' is suggested. library(clustEff) no longer attaches 'qrcm', 'cluster',
'fda', 'ggpubr' and 'ggplot2'.
Removed (with an informative error, see ?"clustEff-defunct"):
| Removed in 1.0.0 | Use instead |
|---|---|
| extract.object(Y, X, ...) | fit the models with qrcm::iqr(), then extract_curves(model) or extract_curves(list_of_models) |
| clustEff(Beta, Beta.lower, Beta.upper, k, ...) | clustEff(curves, lower, upper, p, k, ...): the first three positional arguments are unchanged, but the fourth is now the grid p (pass k by name) |
| diss.mat, cut.method, approx.spline, nbasis, trace, ask, plot | diss, criterion, smooth/df, verbose, a fixed k, plot() |
| fpcac(X, K, fd, niter, Ksteps, seed, disp) | fpcac(curves, t, K, nstart, iter.max) (the second argument is now t), set.seed(), verbose |
| opt.fpcac() correlation distance between scores (default) | Euclidean distance between scores (diss to supply another) |
| opt.fpcac(..., method) | opt.fpcac(..., criterion) |
clustEff() accepts a matrix of curves, the output of extract_curves(), or
directly models fitted with qrcm::iqr(); the grid p can be supplied; for
effects curves the second derivatives are computed from the fitted functions.extract_curves(): effects curves, pointwise bands (any level) and second
derivatives from one or more qrcm::iqr() fits.smooth = TRUE smooths noisy curves with smooth.spline() before computing the
dissimilarity.summary(); new plot() types ("clusters",
"dendrogram", "silhouette", "dissimilarity", "criterion").fpcac(): vectorized trimmed k-means with k-means++ initialization
(init = "random" as before), handling of empty clusters; opt.fpcac() excludes
the trimmed curves from the criteria and has print() and plot() methods.clustEff(): wrong check of Beta.upper; errors with k[1] > 2; conf.level
ignored without bands (quantiles 0.1 and 0.9 were always used); graphical
parameters are no longer modified.fpcac(): failure when the objective function exceeded 1e6; wrong evaluation
grid when an fd object was supplied.fpcac.clustEff() is more stable and faster; changes in plot.clustEff() and
summary.clustEff().