一尘不染

将相似的数字有效地分组在一起

algorithm

我有一系列数字,例如[1, 20, 300, 45, 5, 60, 10, 270, 3]。有什么有效的算法可以根据邻近程度将这些数字分组在一起?在这种情况下,我期望像[1, 3, 5][20, 45, 60][270,300]


阅读 544

收藏
2020-07-28

共1个答案

一尘不染

您要问的最困难的部分是如何实际定义接近度。您期望输出来自[5,10,15,20]什么?会和分组相同[500,1000,1500,2000]吗?

[1,2,3,5,7,8,9]呢 应该有一组还是三组?(或两个?)。
[1,2,3,5,7,8,9,1075,4000]呢 1075和4000会组合在一起吗?样本中的较大数字会改变较小数字的分组吗?

这个问题是整个机器学习领域提出的:聚类分析
也许这个相关问题会有所帮助?

我认为您想要的是K均值聚类(在相关问题中有帮助地链接到),但是您需要知道要将数据拆分成多少组才能使用它。

2020-07-28