首页 > 解决方案 > 数据顺序重要吗?

问题描述

我正在使用 R 对分类数据执行层次聚类。我正在从我的样本中尝试不同的变量,以识别那些提供有意义的聚类结果的变量。但是,我注意到如果我更改数据的顺序,结果会有所不同。这是由于工作方式hclust,还是我错过了什么?

对于每个试验,我提取一定数量的列(在下面的示例中,我使用了 3、28、50、14 列)。

my.data.final <- data.frame(read.csv("C:\\Final dataset-for R.csv"))

library(dplyr)
my.data.final <- my.data.final %>% mutate_if(is.character,as.factor)
my.data.final <- my.data.final %>% mutate_if(is.integer,as.factor)
my.data.final$Age <- factor(my.data.final$Age, ordered = TRUE)

my.data3 <- my.data.final[,c(3,28,50,14)]
my.data3 <- na.exclude(my.data3, row.names=1)
complete.cases(my.data3)

library(cluster)
dist.gower <- daisy(my.data3, metric = "gower")
aggl.clust.c <- hclust(dist.gower, method = "complete")
plot(aggl.clust.c,
     main = "Agglomerative, complete linkages")

当我更改行中列的顺序时:

my.data3 <- my.data.final[,c(3,28,50,14)]

我注意到树状图发生了变化。预计会发生hclust吗?我发现这条线:

 my.data.final$Age <- factor(my.data.final$Age, ordered = TRUE)

以某种方式影响结果,但我不太清楚为什么。

标签: rhclust

解决方案


推荐阅读