【问题标题】:How to define dimensions in fviz_cluster with PAM data?如何使用 PAM 数据在 fviz_cluster 中定义维度?
【发布时间】:2023-03-23 22:21:01
【问题描述】:

我有一个数据框,它被划分为行中的样本和列中的变量

在进行 PCA 时:

   df.pca <- PCA(df, graph = FALSE, ncp = Inf)
   df.coord <- data.frame(df.pca$ind$coord)

然后对我的 PCA 数据进行 k-means:

   df.kmeans = kmeans(df.coord, 3, nstart = 25) 

并可视化集群形成:

   fviz.cluster(object = df.kmeans, data = df.pca)

我得到了一个尺寸正确的漂亮图表(我的数据的 dim1 75% 和 dim 2 12%,由 PCA 计算)。

但如果我用 k-medoid 算法 (PAM) 做同样的事情:

   df.pca <- PCA(df, graph = FALSE, ncp = Inf)
   df.coord <- data.frame(flies.todos.pca$ind$coord)
   df.pam = pam(df.coord, 3, nstart = 25)  

   fviz.cluster(object = df.pam, data = df.pca)

我得到的尺寸不正确(dim1 3.4%,dim 2 3.4%)与完全相同的数据。

如何将维度定义为 PCA 的维度?

我试过了:

    fviz.cluster(object = df.pam, data = df.coord)
    fviz.cluster(object = df.pam, data = df)

没有成功,我总是得到 3.4% 的维度,甚至不接近 PCA 值

【问题讨论】:

    标签: r cluster-analysis k-means pca


    【解决方案1】:

    我遇到了同样的问题。 只是你应该输入参数 stand = FALSE

    因为如果为 TRUE,则在主成分分析之前对数据进行标准化 (:

    【讨论】:

      【解决方案2】:

      好吧,经过简单的探索,我已经知道了答案。 对于 pam() 函数,PCA 总是自动完成。所以基本上我是在对 PCA 数据进行 PCA,这完全没有意义。 如果您要使用 pam() 或任何其他算法进行聚类,请检查 PCA 是否自动完成!

      【讨论】:

        猜你喜欢
        • 2020-03-02
        • 1970-01-01
        • 1970-01-01
        • 2012-04-12
        • 2019-12-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多