簡體   English   中英

Scipy.cluster kmeans2

[英]Scipy.cluster kmeans2

我正在嘗試在 Scipy 中應用kmeans2 算法 以下代碼正確應用了算法。

from scipy.cluster.vq import kmeans2,vq
import numpy as np

df = pd.read_csv("123.csv")

km,_ = kmeans2(X,2)
idx,_ = vq(X,km)

我將如何觀察聚類中心? 我試過打印(中心),打印(質心)等,但沒有任何效果。

我將如何觀察集群標簽? 例如,在 sklearn KMeans 中,這是由labels_給出的。

我已經嘗試過在 Scipy 參考指南中找到的 print(labels) 及其所有變體,但似乎都不起作用。

此外,在初始化方法下,它指出矩陣是 minit 中的一種可用方法。 我無法讓 minit 識別我輸入的任何矩陣。我通常會收到一條錯誤消息,指出“無法理解數據類型”或“不可散列類型:‘列表’。

我嘗試這樣做的原因是因為我想運行 KMeans 聚類算法,我可以在其中手動選擇每個聚類中心,然后將每個點歸類到最近的中心。

我只是不明白“minit”是如何工作的,還是我只是沒有以正確的形式輸入我的矩陣

km 應包含聚類中心。 嘗試

打印(公里)

至於標簽,那應該是 kmeans2 返回的第二個變量。

這是一個工作示例:

df = [[1.,2.,3.], [7.,8.,9.], [2.,2.,2.], [7.,8.,6.]]

centers,labels = kmeans2(df,2) 
print(centers) 
print(labels)

結果:

[[1.5 2.  2.5]
 [7.  8.  7.5]]
[0 1 0 1]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM