我试图将Sklears Kmeans的标签列表与另一个数据集的预测标签进行比较。但是标签列表的大小不同,所以我想要每个标签的出现。在
所以我已经试过用计数器了,但是我没有得到我想要的东西。目前我正在使用np.唯一还有一些问题。在
例如:
X = np.array([[1, 2], [1, 4], [1, 0],[4, 2], [4, 4], [4, 0]])
kmeans = KMeans(n_clusters=4, random_state=0).fit(X)
Unique,count = np.unique(kmeans.labels_,return_index=True)
print(count) # [2 2 1 1] so far so good
New_Labels = kmeans.predict([[0, 4], [4, 4],[0,5],[1,6],[7,2],[4,0],[4,2]])
print(New_Labels) # [3 0 3 3 0 2 0] also good
Unique1,count1 = np.unique(Labels,return_index=True)
这就是我的问题所在。在
^{pr2}$如果集群的标签不存在,我希望标签计数的输出也为0。 所以我希望我预测的标签数量
[3 0 1 3]
您可以使用以下列表理解,它将遍历所有可能的集群分配和^{} 每个元素的出现:
相关问题 更多 >
编程相关推荐