我的目的是创建一个图表,使用CLARA
在R
中显示clusplot
聚类算法的结果。我无法获得clusplot
函数来绘制任何东西。
问题: clusplot
功能出错。
我的名为data.frame
的{{1}}对35个变量进行了300次观察,其中包含分类和缺失值。我展示了数据集的前5行以节省空间。
我的机器:
frame
我的代码:
数据描述
> sessionInfo()
R version 3.1.0 (2014-04-10)
Platform: x86_64-apple-darwin13.1.0 (64-bit)
聚类
#View data.frame
> head(Store2, n=5)
user_id Age Gender HouseholdIncome MaritalStatus Discount.Shopper
1 12945 <NA> Male <NA> <NA>
2 12947 <NA> Male <NA> <NA>
3 12990 <NA> <NA> <NA> <NA>
4 13160 25-34 Male 100k-125k Single
5 13195 <NA> Male 75k-100k Single
PresenceofChildren HomeOwnerStatus HomeMarketValue Occupation
1 <NA> <NA> <NA> <NA>
2 <NA> <NA> <NA> <NA>
3 <NA> <NA> <NA> <NA>
4 No Rent 350k-500k <NA>
5 No Rent 500k-1mm <NA>
Education ZipCode HighNetWorth LengthofResidence ArtsCrafts
1 <NA> NA <NA> <NA> NA
2 <NA> NA <NA> <NA> NA
3 <NA> NA <NA> <NA> NA
4 Completed Graduate School 60657 Yes 2 Years NA
5 Completed College 60614 <NA> 2 Years NA
Automotive BabyProductBuyer Beauty Blogging Books Business CharitableDonors
1 NA NA NA NA NA NA NA
2 NA NA NA NA NA NA NA
3 NA NA NA NA NA NA NA
4 NA NA NA NA NA NA NA
5 TRUE NA NA NA NA NA NA
Cooking DiscountShopper HealthWellness HighEndBrandBuyer HomeGarden
1 NA NA NA NA NA
2 NA NA NA NA NA
3 NA NA NA NA NA
4 NA NA NA NA NA
5 NA NA NA NA NA
HomeImprovement LuxuryGoods MagazineBuyer NewsCurrentEvents OutdoorAdventure Pets
1 NA NA NA NA NA NA
2 NA NA NA NA NA NA
3 NA NA NA NA NA NA
4 NA NA NA NA NA NA
5 NA NA TRUE NA NA NA
Sports Technology Travel
1 NA NA NA
2 NA NA NA
3 NA NA NA
4 NA TRUE NA
5 NA NA NA
编辑:我错误地使用了#Load library
library(cluster)
#Set seed for reproducibility
set.seed(2)
#CLARA algorithm with 3 clusters and 5 samples of 60
clara1 <- clara(frame, 3, metric = "gower", stand = FALSE, samples = 5,
sampsize = (60), medoids.x = TRUE, keep.data = TRUE,
rngR = TRUE, pamLike = TRUE)
#Cluster plot of data
> clusplot(clara1, main = "CLARA Results", labels = 5)
#Error in princomp.default(x, scores = TRUE, cor = ncol(x) != 2) :
#cannot use 'cor = TRUE' with a constant variable
距离度量而不是Euclidean
。
其他主题建议对具有混合值的数据集使用Gower
距离函数。
Hierarchical clustering with mixed data type
根据此链接,允许Gower
中缺少值。
编辑2:我检查了Gower
函数结果,所有行都对应于三个集群中的一个。 CLARA
功能正常运行。这是脚本:
CLARA
这是每个群集的大小
> clara1$clustering
[1] 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1
[41] 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 2 1 1 1 1 1 1 1 1 1
[81] 1 1 1 1 1 1 1 1 1 1 1 2 1 1 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[121] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[161] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3
[201] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
[241] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
[281] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3