我有一个一维值列表,如下所示:
x = [20 21 30 31 200 201]
这些值具有相应的权重:
w = [100 100 100 100 1 1]
我知道这个数据集中有簇。使用常规 k-means 会导致
centroids = [25.5, 200.5]
但我想考虑权重,使接近 200 的值基本上没有意义。
所以我希望两个集群质心更像:
centroids = [20.5, 30.5]
我觉得正确的聚类算法有点像mean shift,它发现和是数据中两个突出的峰值。但我希望它正好找到 2 个集群,所以常规的均值偏移不起作用。有没有好的算法可以实现这一点?