Plot robust model-based clustering results: scatter plot with clustering information, optimization profiling, and cluster fit.
1 2 3
The type of graph. It can be one of the following:
The data vector, matrix or data.frame (or some transformation of them), used for obtaining the
A vector of integers denoting the variables (numbers of columns of
An integer denoting the cluster for which the fit
plot is returned. This is only relevant if
further arguments passed to or from other methods.
A plot with the profiling of the OTRIMLE criterion
optimization. Criterion at
log(icd)=-Inf is always represented.
A plot with the profiling of the improper log
along the search path for the OTRIMLE optimization.
-P plot (probability
-probability plot) of the weighted empirical
distribution function of the Mahalanobis distances of observations
from clusters' centers against the target distribution. The target
distribution is the Chi-square distribution with degrees of
freedom equal to
ncol(data). The weights are given by the improper posterior
-P plots are produced for
all clusters, otherwise
cluster selects a single P
plot at times.
A pairwise scatterplot with cluster memberships. Points
assigned to the noise/outliers component are denoted by
Coretto, P. and C. Hennig (2015). Robust improper maximum likelihood: tuning, computation, and a comparison with other methods for robust Gaussian clustering. To appear on the Journal of the American Statistical Association. arXiv preprint at arXiv:1406.0808 with (supplement).
Coretto, P. and C. Hennig (2016). Consistency, breakdown robustness, and algorithms for robust improper maximum likelihood clustering. arXiv preprint at arXiv:1309.6895.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
## Load Swiss banknotes data data(banknote) x <- banknote[,-1] ## Perform otrimle clustering with default arguments set.seed(1) a <- otrimle(data=x, G=2) print(a) ## Plot clustering plot(a, data=x, what="clustering") ## Plot clustering on selected margins plot(a, data=x, what="clustering", margins=4:6) ## Plot clustering on the first two principal components z <- scale(x) %*% eigen(cor(x), symmetric=TRUE)$vectors colnames(z) <- paste("PC", 1:ncol(z), sep="") plot(a, data=z, what="clustering", margins=1:2) ## Plot OTRIMLE criterion profiling plot(a, what="criterion") ## Plot Improper log-likelihood profiling plot(a, what="iloglik") ## Fit plot for all clusters plot(a, what="fit") ## Fit plot for cluster 1 plot(a, what="fit", cluster=1)