2016-04-11 19 views
0

Hmisc'dan numaralı telefonu kullanarak değişkenlerin kümelenmesini gerçekleştiriyorum (değişkenlerimin tümü sayısal). Ancak, elde ettiğim kümeler hakkında daha fazla bilgi edinmenin bir yolunu bulamıyorum. hclust'dan cutree'u denedim, ancak çalışmadı. R'de varclus ile dendrogram nasıl kesilir?

birisi varclus için cutree daha benzer bir işlev biliyor mu ... Ben alabilirim içlerindeki kümeler ve değişkenlere tek bilgi ağacını görselleştirerek, ama çok kullanışlı değil mi? Veya değişkenlerin kümelenmesini gerçekleştirmek için başka bir işlev? Yeni bir R kullanıcısıyım, bu yüzden herhangi bir yardım çok memnuniyetle karşılıyor!

Kesmek istediğim bir dendrogram örneği.

install.packages('dprep') 
library(dprep) 
library(datasets) 

mxionosphere <- data.matrix(ionosphere) 
v <- varclus(mxionosphere) 
plot(v) 

Çıktı olarak aldığım dendrogramı kesmek istiyorum.

Çok teşekkürler!

+0

Konu dışı soru için üzgünüm, bunun farkında değildim. Bu soruyu daha sonra Stack Overflow'a taşımama yardım edebilir misin? Teşekkür ederim! – benmaq

+1

Basit bir tekrarlanabilir örnek ekleyecekseniz, sorunuzu SO'da daha iyi olacağını düşündüğüm halde, postanızın dikkatini çekicinizin dikkatini çekmek için bu soruyu işaretçi olarak işaretleyebilirsiniz. – Silverfish

cevap

0

varclus() için hala cutree()'u kullanabilirsiniz, önce hclust nesnesini ayıklamanız gerekir. Ayrıca hclustvar() ve fonksiyonu ile ClustOfVar paketini kullanarak bunu yapabilirsiniz:

Varclus() kullanma:

Sen cutree işlevini kullanabilirsiniz, sadece ilk v itibaren hclust nesneyi ayıklamak gerekiyor. Bu, varclus() işlevinde gerçekleştirilen kümeleme aslında hclust() tarafından yapıldığı için çalışır. Bkz Hmisc :: Ardından kod aşağıda olarak kullanılabilir

varclus:?

library(dprep) 
library(datasets) 
mxionosphere <- data.matrix(ionosphere) 
v <- varclus(mxionosphere) 
groups <- cutree(v$hclust, 10) 

hangi edecek o hclust için yaptığı gibi, her değişken aittir Küme çıktı.

ClustOfVar paketini kullanarak: (https://cran.r-project.org/web/packages/ClustOfVar/ClustOfVar.pdf)

Benzer varclus() için, hclustvar() değişkene hiyerarşik kümeleme gerçekleştirecektir. Sonra, dendogramı k gruplarına kesmek için kullanabilirsiniz.

libary(ClustOfVar) 
h<-hclustvar(mxionosphere) 
clusters<-cutreevar(h, k=10) 
groups<-clusters$cluster ##extract clusters values similar to cutree() 
İlgili konular