【问题标题】:Clustering binary data聚类二进制数据
【发布时间】:2013-07-27 16:24:50
【问题描述】:

我想对以下数据(样本)进行聚类分析:

    ID     CODE1     CODE2     CODE3     CODE4      CODE5      CODE6
   ------------------------------------------------------------------
   00001     0         1         1         0          0          0
   00002     1         0         0         0          1          1
   00003     0         1         0         1          1          1
   00004     1         1         1         0          1          0
    ...

其中 1 表示存在该人的代码,0 表示不存在.. k-means 或层次聚类最适合对此类数据的代码进行聚类(对于大约一百万个不同的 id),以及使用哪种距离度量?如果这两种方法都不合适,您认为哪种方法最合适?

谢谢

【问题讨论】:

    标签: python binary cluster-analysis k-means hierarchical


    【解决方案1】:

    不,k-means 对二进制数据没有多大意义。

    因为 k-means 计算 means。但是二进制数据的平均向量是多少?

    您的集群“中心”将不属于您的数据空间,也不属于您的输入数据。当它与您的对象完全不同时,这对我来说似乎不是一个合适的“中心”。

    最有可能的是,您的集群“中心”最终会比实际的集群成员更相似,因为它们位于中心的某个位置,而您的所有数据都在角落。

    认真研究一下您的数据类型的相似性函数。然后选择一个适用于这个距离函数的聚类算法。层次聚类很一般,但速度很慢。但您不必使用 40 年前的算法,您可能想研究更现代的东西。

    【讨论】:

      猜你喜欢
      • 2012-07-10
      • 2017-07-05
      • 2015-07-26
      • 1970-01-01
      • 2013-12-23
      • 2014-11-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-30
      相关资源
      最近更新 更多