[R] Examining how cases are similar by cluster, in cluster analysis
David L Carlson
dcarlson at tamu.edu
Sun Nov 18 21:44:47 CET 2012
If you just want a summary of the mean for each variable in each
cluster, this will get you there:
> set.seed=42
> FS1 <- data.frame(matrix(sample(c(0, 1), 12*63, replace=TRUE),
nrow=63,
+ ncol=12))
> dmat <- dist(FS1, method="binary")
> cl.test <- hclust(dmat, method="average")
> plot(cl.test, hang=-1)
> hcli8 <- cutree(cl.test, k=8)
> tbl <- aggregate(FS1, by=list(Group=hcli8), mean)
> print(tbl, digits=4)
Group X1 X2 X3 X4 X5 X6 X7 X8
X9
1 1 0.5122 0.6829 0.6829 0.6341 0.5854 0.5854 0.6829 0.6341
0.5366
2 2 0.0000 0.0000 0.0000 1.0000 0.6667 0.6667 0.0000 0.6667
0.0000
3 3 0.9286 0.1429 0.1429 0.1429 0.2857 0.5714 0.7857 0.3571
0.8571
4 4 1.0000 1.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000
0.0000
5 5 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
1.0000
6 6 1.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 1.0000
0.0000
7 7 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000
0.0000
8 8 0.0000 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000
0.0000
X10 X11 X12
1 0.4146 0.4634 0.561
2 0.6667 0.0000 0.000
3 0.8571 0.6429 0.500
4 1.0000 0.0000 0.000
5 0.0000 1.0000 0.000
6 0.0000 0.0000 1.000
7 0.0000 0.0000 0.000
8 0.0000 0.0000 0.000
>
----------------------------------------------
David L Carlson
Associate Professor of Anthropology
Texas A&M University
College Station, TX 77843-4352
> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of Bob Green
> Sent: Sunday, November 18, 2012 5:00 AM
> To: r-help at r-project.org
> Subject: [R] Examining how cases are similar by cluster, in
> cluster analysis
>
> Hello,
>
> I used the following code to perform a cluster analysis on a
> dataframe consisting of 12 variables (coded as 1,0) and 63
> cases.
>
>
>
> FS1 <- read.csv("D://Arsontest2.csv",header=T,row.names=1)
>
> str(FS1)
>
> dmat <- dist(FS1, method="binary")
>
> cl.test <- hclust (dist(FS1, method ="binary"), "ave")
>
> plot(cl.test, hang = -1)
>
>
>
> Each case has an id and the dendogram identifies the respective
> cases
> which constitute each cluster. What I am seeking advice on is
> how to
> examine the variables on which the cases are similar, within
> each cluster.
>
>
>
> sort (hcli8 <- cutree(cl.test, k=8)) identifies that the
> following
> cluster 2is comprised of the following cases:
>
> 1641 2295 2594 2654 2799 3213 3510 3513 2958 3294
>
> 2 2 2 2 2 2 2
> 2
> 2 2
>
>
>
> This code provides means for the variables by cluster. In
> relation to
> cluster 2 it appears the cases should have no clear motive and
> be depressed :
>
> round(sapply(x, function(i) colMeans(FS1[i,])),2)
>
> [,1] [,2] [,3] [ ,4] [,5]
> [,6] [,7] [,8]
>
> depressed 0.00 0.33 0.00 0.0 0 0.6 0.00 0.08
>
> unclear 0.33 1.00 1.00 1.0 0 0.0 0.07 0.12
>
>
>
> I can manually, examine this variable by variable and look at
> how
> each of the cases in cluster 2 are similar on the variables. I
> am
> looking at a more efficient and quicker way to do this.
>
> Bob
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-
> project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible
> code.
More information about the R-help
mailing list