scipy.cluster.hierarchy.

cut_tree#

scipy.cluster.hierarchy.cut_tree(Z, n_clusters=None, height=None)[原始碼]#

給定連結矩陣 Z,返回 cut tree。

參數:
Zscipy.cluster.linkage 陣列

連結矩陣。

n_clustersarray_like,可選

在切割點的樹狀結構中的叢集數量。

heightarray_like,可選

切割樹狀結構的高度。僅適用於超度量樹狀結構。

返回:
cutree陣列

一個陣列,指示在每個聚合步驟中的群組成員資格。也就是說,對於完整的 cut tree,在第一列中,每個資料點都在其自己的叢集中。在下一步中,兩個節點被合併。最後,所有單例和非單例叢集都在一個群組中。如果給定了 n_clustersheight,則列對應於 n_clustersheight 的列。

範例

>>> from scipy import cluster
>>> import numpy as np
>>> from numpy.random import default_rng
>>> rng = default_rng()
>>> X = rng.random((50, 4))
>>> Z = cluster.hierarchy.ward(X)
>>> cutree = cluster.hierarchy.cut_tree(Z, n_clusters=[5, 10])
>>> cutree[:10]
array([[0, 0],
       [1, 1],
       [2, 2],
       [3, 3],
       [3, 4],
       [2, 2],
       [0, 0],
       [1, 5],
       [3, 6],
       [4, 7]])  # random