2017-03-08 87 views
2

我正在開發一個項目,在該項目中,我利用未標記數據集的聚類結構來改進監督學習聚類算法的性能。存儲在一個矩陣 - - 預處理該數據後,我使用k均值聚類,像這樣的數據:K均值聚類 - 在每個聚類中繪製類別比例

from sklearn.cluster import KMeans 
k = KMeans(n_clusters=40).fit(X) 

我具有存儲在y所需標籤。我對看到不同的類是如何聚類的感興趣。如果這些集羣相對純粹或混合。

爲此,我想查看每個集羣中每個類的比例。這是一個二元分類任務 - 正數(用y表示)和負數表示(用y表示)。

(在y陣列的第n個元素是X矩陣的第n行正確的標籤。)

+0

什麼是_positive_和_negative_實例? – DyZ

+0

@DYZ編輯過的問題。 – scutnex

回答

0

我會使用熊貓:

import pandas as pd 

合併真實標籤和簇標記引入一個數據幀:

df = pd.DataFrame({'clusters' : k.labels_, 'labels' : y}) 

集團通過集羣每個簇得到的1的分數:

df.groupby('clusters').apply(lambda cluster: cluster.sum()/cluster.count())