Я хотел бы объединить данные в двоичное дерево - на каждом уровне я хочу, чтобы 2 ближайших узла были сгруппированы вместе.
Возможно ли это? Я попытался:
train.cor <- cor(Xtrain, method="spearman")
train.dist <- as.dist(1 - train.cor)
train.tree <- hclust(train.dist, method="complete")
clusterNum<-p
count=1
clustersList<-list()
clustersDF <- data.frame(matrix(ncol = 2, nrow = 0))
while (clusterNum>=1)
{
clusters <- cutree(train.tree, k=clusterNum)
clustersList[[count]]<-clusters
clusterNum<-clusterNum/2
count<-count+1
}
Проблема в том, что я получаю количество кластеров, которое я хотел, но в каждом кластере может быть больше или меньше 2 элементов.