SciPy - fclusterdata() 方法



SciPy 的 fclusterdata() 方法執行基於層次聚類的距離矩陣運算,並形成扁平聚類。

扁平聚類基於無監督機器學習,它識別其特徵。例如 - 在生物實驗室中,不同型別的細胞指定其特徵。

語法

以下是 SciPy fclusterdata() 方法的語法:

fclusterdata(inp_data, t = int_value, criterion = 'metric_name')

引數

此方法接受以下引數:

  • inp_data:此引數儲存給定輸入陣列的值。
  • t = int_value:此引數指定如何切割層次樹以建立扁平聚類。
  • criterion = 'name':此引數用於設定不同的標準,例如距離、ward 等。這些可以用字串表示。

返回值

此方法返回 n 維陣列。請注意,標準用於形成扁平聚類。

示例 1

以下是一個基本的示例,它展示了 SciPy fclusterdata() 方法的用法。

from scipy.cluster.hierarchy import fclusterdata
import numpy as np

inp_data = np.array([[10, 20], [30, 40], [50, 60], [70, 80], [10, 0]])
res_clusters = fclusterdata(inp_data, t = 1.5, criterion='distance')
print(res_clusters)

輸出

以上程式碼產生以下結果:

[1 3 4 5 2]

示例 2

此程式說明了連線方法 ward(最小化聚類的方差),並將 maxclust 設定為標準,該標準根據給定輸入指定 3 個聚類。

from scipy.cluster.hierarchy import fclusterdata
import numpy as np

inp_data = np.array([[10, 20], [30, 40], [50, 60], [70, 80], [10, 0]])
res_clusters = fclusterdata(inp_data, t = 3, criterion='maxclust', method='ward')
print(res_clusters)

輸出

以上程式碼產生以下結果:

[1 2 2 3 1]

示例 3

此示例將標準設定為 inconsistent,將度量設定為 cosine,這確定高維資料,並可用於建立聚類,並生成結果矩陣作為不一致性較小的值。

from scipy.cluster.hierarchy import fclusterdata
import numpy as np

inp_data = np.array([[10, 20], [30, 40], [50, 60], [70, 80], [10, 0]])
res_clusters = fclusterdata(inp_data, t=1.15, criterion='inconsistent', metric='cosine')
print(res_clusters)

輸出

以上程式碼產生以下結果:

[1 1 1 1 1]
scipy_reference.htm
廣告
© . All rights reserved.