如何解释k Medoids输出

时间:2015-07-24 12:40:06

标签: python cluster-analysis

我找到了K-Medoids的this实现,我决定在我的代码中尝试它。

我的原始数据集是21x6矩阵。

要生成我正在使用的距离矩阵:

import scipy.spatial.distance as ssd
distanceMatrix = ssd.squareform(ssd.pdist(matr, 'cosine'))

然后我决定了一些集群:

clusters = int(np.sqrt(len(matr.data)/2))

最后:

clusters, medoids = self.cluster(distanceMatrix,clusters)
print(clusters)
print(medoids)

对于给定的输入,我得到这个输出:

[12 12 12 12 12 12 12  7  7  7  7 11 12 12 12 12 12 12 11 12 12]
[12  7 11]

虽然我期望输出类似于sklearn.cluster.KMeans,但我的矩阵中的每个点都有一个标签。 如果我想使用结果来分散聚类元素,我应该如何处理这种输出,如下图所示(我使用k-Means)? kmeans-example

1 个答案:

答案 0 :(得分:1)

k-medoids使用数据点作为中心,因此Player.find({ filter: { include: ["countries", "colors"] } }).$promise.then(function(data) { // some stuff } 将为您提供输入数据集中的中心索引,print(medoids)将为您提供数据点所属的组。
图中的星星将是数据集[12],数据集[11]和数据集[7]