viewClusters: PLOT ALL CLUSTERS IN A 2-D PROJECTION SPACE In clusterGeneration: Random Cluster Generation (with Specified Degree of Separation)

Description

Plot all clusters in a 2-D projection space.

Usage

  1 2 3 4 5 6 7 8 9 10 11 12 13 14 viewClusters( y, cl, outlierLabel = 0, projMethod = "Eigen", xlim = NULL, ylim = NULL, xlab = "1st projection direction", ylab = "2nd projection direction", title = "Scatter plot of 2-D Projected Clusters", font = 2, font.lab = 2, cex = 1.2, cex.lab = 1.2) 

Arguments

 y Data matrix. Rows correspond to observations. Columns correspond to variables. cl Cluster membership vector. outlierLabel Label for outliers. Outliers are not involved in calculating the projection directions. Outliers will be represented by red triangles in the plot. By default, outlierLabel=0. projMethod Method to construct 2-D projection directions. projMethod="Eigen" indicates that we project data to the 2-dimensional space spanned by the first two eigenvectors of the between cluster distance matrix B={2\over k_0}∑_{i=1}^{k_0}Σ_i+{2\over k_0(k_0-1)}∑_{i

Value

 B Between cluster distance matrix measuring the between cluster variation. Q Columns of Q are eigenvectors of the matrix B. proj Projected clusters in the 2-D space spanned by the first 2 columns of the matrix Q.

Author(s)

Weiliang Qiu weiliang.qiu@gmail.com
Harry Joe harry@stat.ubc.ca

References

Dhillon I. S., Modha, D. S. and Spangler, W. S. (2002) Class visualization of high-dimensional data with applications. computational Statistics and Data Analysis, 41, 59–90.

Qiu, W.-L. and Joe, H. (2006) Separation Index and Partial Membership for Clustering. Computational Statistics and Data Analysis, 50, 585–603.

plot1DProjection plot2DProjection
  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 n1 <- 50 mu1 <- c(0, 0) Sigma1 <- matrix(c(2, 1, 1, 5), 2, 2) n2 <- 100 mu2 <- c(10, 0) Sigma2 <- matrix(c(5, -1, -1, 2), 2, 2) n3 <- 30 mu3 <- c(10, 10) Sigma3 <- matrix(c(3, 1.5, 1.5, 1), 2, 2) n4 <- 10 mu4 <- c(0, 0) Sigma4 <- 50*diag(2) library(MASS) set.seed(1234) y1 <- mvrnorm(n1, mu1, Sigma1) y2 <- mvrnorm(n2, mu2, Sigma2) y3 <- mvrnorm(n3, mu3, Sigma3) y4 <- mvrnorm(n4, mu4, Sigma4) y <- rbind(y1, y2, y3, y4) cl <- rep(c(1:3, 0), c(n1, n2, n3, n4)) par(mfrow=c(2,1)) viewClusters(y = y, cl = cl) viewClusters(y = y, cl = cl, projMethod = "DMS")