【问题标题】:Filtering Variables within Cluster Analysis in R在 R 中的聚类分析中过滤变量
【发布时间】:2019-01-23 15:32:59
【问题描述】:

我正在尝试对具有大量噪音的金融数据集运行聚类分析 (PAM)。

有超过 100 个变量,其中许多是高度共线的。

考虑到噪声和共线性的数量,在整个列数组上运行聚类算法几乎是荒谬的,我不希望使用 PCA,因为我最终会得到组件而不是每个集群的现有变量范围,我计划进一步分析。

在评估一组定义的变量(例如 10 个变量)的聚类趋势(霍普金统计量)时,我可以确定聚类是否可行。我的问题是,是否有一种方法可以在每个可能的组中循环 hopkin 的统计数据,比如 10 个变量,这样我就可以在具有最佳 hopkin 统计数据的组上运行聚类算法,等等。

我可能对此不太满意,但我们不胜感激。

【问题讨论】:

  • choose(100,10) 说这是不切实际的。
  • 对替代方案有什么想法吗?
  • 不要依赖霍普金斯的统计数据。这是对一致性的简单测试,但不是对多模态的测试。即,单个高斯将具有很高的“聚类趋势”,但这可能对您没有用处。

标签: r cluster-analysis pca financial


【解决方案1】:

使用子空间聚类方法。

这些算法试图同时识别集群和区分该集群的变量。

但是,如果您减少变量的数量,即使是这些算法也会受益。首先尝试识别高度相关的变量(重复)和无用的变量(噪声),并将它们移除。

不要依赖 Hopkins 统计数据。这是一个简单的一致性测试,但不是多模态测试。即,单个高斯将具有很高的“聚类趋势”,但这可能对您没有用处。因此,统计数据可能无济于事。

【讨论】:

    【解决方案2】:

    有一个包'clustertend',这里有霍普金的统计作为函数 https://cran.r-project.org/web/packages/clustertend/clustertend.pdf

    【讨论】:

    • 感谢您的回复。我的问题是关于因素本身的选择。例如,如果我对 50 个左右的变量进行 100 次观察,有没有办法测试哪个变量组合返回最大的霍普金统计量?现在我被困在手动测试变量组合以聚类观察结果。
    猜你喜欢
    • 2021-03-19
    • 1970-01-01
    • 2017-01-08
    • 2011-06-30
    • 1970-01-01
    • 1970-01-01
    • 2016-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多