scipy.cluster.hierarchy.
砍树#
- scipy.cluster.hierarchy.cut_tree(Z, n_clusters=None, height=None)[源代码][源代码]#
给定一个连接矩阵 Z,返回切割树。
- 参数:
- Zscipy.cluster.linkage 数组
连接矩阵。
- n_clusters类似数组, 可选
在切割点处树中的簇的数量。
- 高度类似数组, 可选
要切割树的高度。仅适用于超度量树。
- 返回:
- cutree数组
一个数组,表示在每个聚合步骤中的分组情况。即,对于一个完整的切割树,在第一列中每个数据点都在自己的簇中。在下一步中,两个节点被合并。最后,所有单例和非单例簇都在一个组中。如果给出了 n_clusters 或 height,则列对应于 n_clusters 或 height 的列。
示例
>>> 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