簡體   English   中英

在hclust中使用cluster.stats

[英]Using cluster.stats with hclust

我在兩個不同的hclust群集上使用cluster.stats時遇到問題。 那不可能嗎?

我使用的版本是0.99.491 –©2009-2015 RStudio,Inc.,並安裝了以下軟件包:

mylib <- "/Users/Klaus/R Packages/"; mylib
install.packages("NbClust",lib=mylib)
install.packages("modeltools",lib=mylib)
install.packages("flexclust",lib=mylib)
install.packages("RTextTools",lib=mylib) # Amazon's default machine image uses the Atlas BLAS. R points to that when installed with all defaults, but RTextTools expects the ordinary BLAS. 
install.packages("mclust",lib=mylib)
install.packages("fpc",lib=mylib)

library("NbClust",lib=mylib)
library("modeltools",lib=mylib)
library("flexclust",lib=mylib)
library("cluster",lib=mylib)
library("mclust",lib=mylib)
library("fpc",lib=mylib)

我正在創建這些集群:

data(nutrient, package="flexclust")
row.names(nutrient) <- tolower(row.names(nutrient))
nutrient.scaled <- scale(nutrient)
d_eucli <- dist(nutrient.scaled,"euclidean")
fit.single <- hclust(d_eucli, method="single")
fit.average <- hclust(d_eucli, method="average")

但是在它們上使用cluster.stats時出現錯誤:

cluster.stats(d_eucli, fit.single$cluster, fit.average$cluster)

錯誤(在丹麥語設置中):

Fejl i `[<-`(`*tmp*`, j, i, value = Inf) : subscript out of bounds
In addition: Advarselsbeskeder:
1: I max(clustering) : no non-missing arguments to max; returning -Inf
2: I cluster.stats(d_eucli, fit.single$cluster, fit.average$cluster) :
  clustering renumbered because maximum != number of clusters
3: I min(bv) : no non-missing arguments to min; returning Inf
4: I min(sij) : no non-missing arguments to min; returning Inf

我想念什么?

hclust將計算樹狀圖,而不是分區。

要執行后面的步驟,請使用cutree 這樣您就可以繼續了。

以下代碼應該可以工作,我自己嘗試過:

fit.single <- hclust(d_eucli, method="single")

fit.average <- hclust(d_eucli, method="average")

cut.single <- cutree(fit.single, k=3) 

如果您知道群集數(K)或根據其他驗證測試,則應指定群集數(K)

cut.average <- cutree(fit.average, k=3)

cluster.stats(d_eucli, cut.single, cut.average)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM