【问题标题】:Finding best number of clusters knowing only dissimilarity matrix in R [duplicate]在 R [重复] 中仅知道相异矩阵找到最佳聚类数
【发布时间】:2015-01-27 10:50:43
【问题描述】:

我有一个相异矩阵,我想使用该矩阵作为唯一输入来运行层次聚类,因为我不知道源数据本身。对于背景,我的目标是使用它们的相互相关性作为距离来聚类元素。按照here 中指示的方法,我使用相关矩阵来计算要作为输入提供给 hclust 的相异矩阵。这工作正常。

我的问题是:如何找到最佳集群数量?是否有一个可以通过知道相异矩阵来计算的索引? NbClust 中的索引需要源数据才能运行 - 仅知道相异矩阵是不够的。我可以在 R 中使用其他方法吗?

【问题讨论】:

  • 如何定义最佳或最佳集群数?
  • @LauriK 我会使用为此目的开发的许多索引中的任何一个来选择集群的数量,例如NbClust 中可用的索引。我的问题是我需要找到一个不需要原始数据集而只需要相异矩阵的索引。
  • 层次聚类与您的问题有什么关系? HC不需要设置多个集群

标签: r hierarchical-clustering


【解决方案1】:

通过快速查看 NbClust 文档,只提供省略原始数据源的相异矩阵似乎是可行的。

NbClust(data = NULL, diss = XYZ, distance = NULL ...

由于提供了矩阵(此处称为 XYZ),因此必须将数据和距离设置为 NULL。这在功能用法中有所说明。然后,NbClust 应该能够生成您所追求的分区索引。

【讨论】:

  • NbClust 包提供 30 个指标,用于确定数据集中的最佳聚类数,并根据通过改变聚类数、距离度量的所有组合获得的不同结果向用户建议/提供最佳聚类方案, 和聚类方法。
  • 关于Relevant Number of Clusters的实际发布和详细解释请参考:【NbClust: An R Package for Determining the Relevant Number of Clusters in a Data Set】( jstatsoft.org/article/view/v061i06),作者甚至在提交的补充材料中提供了模拟数据。
猜你喜欢
  • 2018-02-15
  • 2015-12-14
  • 2015-06-24
  • 2018-06-30
  • 1970-01-01
  • 2020-11-29
  • 1970-01-01
  • 2011-04-18
  • 1970-01-01
相关资源
最近更新 更多