如何获得离簇中心最近的N个数据点?

maV*_*rik 4 cluster-analysis machine-learning k-means python-3.x scikit-learn

我想在部署 K-means 算法后在每个集群中获得距离中心最近的 N 个数据点(基于欧几里得距离)。我能够使用获取数据点的索引

np.where(km.labels_ == 0)
Run Code Online (Sandbox Code Playgroud)

Fra*_*olo 5

您可以使用transform该类的方法kmeans来计算每个数据点到每个簇的距离。

N然后假设您想要第 0 个索引的最高点cluster,那么您可以这样做:

cluster = 0
N = 2
np.sort(kmeans.transform(X)[:,cluster])[:N]
Run Code Online (Sandbox Code Playgroud)