2017-09-04 45 views
0

我想知道是否可以在Python上使用分層聚類不同樣本大小?更確切地說,用沃德的最小方差法。在Python上使用不同樣本大小進行分層聚類

例如,我有5個不同長度的整數列表A,B,C,D,E。我想要做的是根據Ward的方法將這5個列表分組爲3個組(被合併的集羣的方差減少)。

有誰知道如何做?

回答

0

我們可以考慮這5個列表是你想要在3個組中聚類的樣本。 您可能知道的分層聚類可以作爲輸入距離矩陣。距離矩陣評估樣本之間的某種成對距離(或不相似度)。

您必須通過選擇有意義的距離函數構造此5x5矩陣。這很大程度上取決於你的樣本/整數代表什麼。由於您的樣本不具有恆定的長度,因此無法計算像歐氏距離這樣的度量。

例如,如果列表中的整數可以解釋爲類,則可以計算Jaccard索引以表達某種不相似性。

[1 2 3 4 5]和[1 3 4]具有3/5的Jaccard相似性指數(或 不相似度2/5)。
0完全不同,1完全相同。
https://en.wikipedia.org/wiki/Jaccard_index

一旦你的相似矩陣計算(事實上,它僅代表5選2 = 10個不同的值,因爲這矩陣是對稱的),你可以將其應用層次聚類。

重要的是找到適合您的問題的距離函數。