簡體   English   中英

使用R進行聚類時如何正確繪制回歸樹

[英]How to draw the regression tree correctly when clustering using R

嘗試建立模型時,我陷入困境。 我想按年將數據集freeny分為10個子集。

data(freeny)

options(digits=2)
 year<-as.integer(rownames(freeny))
 freeny<-cbind(freeny,year)
 freeny = freeny[sample(1:nrow(freeny),length(1:nrow(freeny))),1:ncol(freeny)]
 freenyValues= freeny[,1:5]
 freenyTargets=decodeClassLabels(freeny[,6])
 freeny = splitForTrainingAndTest(freenyValues,freenyTargets,ratio=0.15)
 km<-kmeans(freeny$inputsTrain,10,iter.max = 100, nstart = 5)
 kclust=km$cluster
 library(tree)
 kclust=as.factor(kclust)
 mdp=cbind(freeny$inputsTrain,kclust)
 mdp<-data.frame(mdp)
 mdp.tr=tree(kclust~.,mdp)

但是結果是樹只有5個終端節點,因為我被kmeans划分為10個集群,所以應該是10個終端節點。 怎么了?

不,不應該。 tree是一種算法,它嘗試擬合給定的預測器和響應的樹,並在出現以下情況時停止

終端節點太小或太少而無法拆分。

(手冊頁)。 嘗試調整minsize參數(請參閱?tree.control )。

minsize:允許的最小節點大小:加權數量。 預設值為10。

我認為以下將達到預期目的:

mdp.tr=tree(kclust~.,mdp, minsize= 1)

暫無
暫無

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

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