如何对此数据列表执行聚类分析



我对聚类分析和数据科学的了解是肤浅的。我的问题是将以下数据分组到集群中:

Data = [40,45,50,60]

我的标准是当每对数字之间的差异在某个阈值(假设 10(内时对数字进行分组。因此,可能的集群是:

Cluster1 = [40,45] [50,60]
Cluster2 = [40,45,50] [60]
Cluster3 = [40][45,50][60]

我需要找到所有这些可能的集群,并根据特定条件选择其中一个。是否有任何数据科学库可用于执行此类聚类?

由于您的数据是一维的,因此问题变得比通常的多变量聚类方案容易得多

您可以使用非常简单的策略来枚举所有可能的"聚类":

  1. 对数据进行排序
  2. 从最小值开始
  3. 如果下一个值在阈值内,则将其添加到群集并继续
  4. 回溯,并尝试不向现有集群添加值,而是开始一个新集群。

停止为所有内容寻找库,只需自己编写代码即可。聚类库解决了更复杂的问题,通常不包括这种简单的单变量策略。

有大量的

聚类库,你不能闭上眼睛选择一个,因为如果你这样做,那么整个分析都是有缺陷的。

你必须问自己一个问题,"你为什么要聚类?",是为了降低维度还是为了找到模式。你需要问的另一个问题是,how are the different variables related to each other?

您在上面显示的数据looks numerical .对于数值数据进行分组,可以使用最简单的算法 k 均值。 looks numerical的意思是它真的是数值或虚拟编码来表示文本值。

聚类中的另一个重要问题是确定并证明x数量的组的存在。k-means算法是一种分区方法,它需要输入possible number of clusters

总的来说,我建议你需要重新思考这个问题的可行性,并回答提出的问题,为你的问题得出一个有意义的解决方案。

最新更新