我正在尝试对这样的数字列表执行 MeanShift 聚类:
list = [4, 55, 8, 9, 12, 11, 11, 813, 832, 774, 781, 5, 769, 22]
X = np.reshape(list, (-1, 1))
ms = MeanShift(bandwidth = 30, bin_seeding = True)
ms.fit(X)
labels = ms.labels_
labels_unique = np.unique(labels)
n_clusters_ = len(labels_unique)
这将返回:
number of estimated clusters : 4
[0 3 0 0 0 0 0 1 1 2 2 0 2 0]
但是,我不确定为什么 55 被标记为集群 3。我想如何标记它是:
[0 1 0 0 0 0 0 3 3 2 2 0 2 0]
这将按数字升序标记集群。有没有办法在 sklearn.cluster.MeanShift 中做到这一点?