对数字序列进行聚类

Clustering a sequence of numbers

我有一个小的聚类问题 - 我有这个序列:

349、1496、348、1497、347、1503、1502、1495、353、352、351、1501、354、1504、1498、1500

而且我想检测到有两个集群 - 一个大约 350,另一个大约 1500。对此有任何直接的解决方案吗?到目前为止,我尝试四舍五入到最接近的 100,例如int(round(x1 / 100.0)) * 100,这并不总是有效,因为数字可能会有所不同;另一种是使用轮廓法,这个小问题似乎太多了。

对数据进行排序。

在最大间隙处拆分。