12

如何在scipy/中的相关矩阵上运行层次聚类numpy?我有一个 100 行乘 9 列的矩阵,我想通过 9 个条件下每个条目的相关性来分层聚类。我想使用 1-pearson 相关性作为聚类的距离。假设我有一个包含 100 x 9 矩阵的numpy数组X,我该怎么做?

我尝试使用 hcluster,基于此示例:

Y=pdist(X, 'seuclidean')
Z=linkage(Y, 'single')
dendrogram(Z, color_threshold=0)

但是,pdist这不是我想要的,因为那是欧几里得距离。有任何想法吗?

谢谢。

4

1 回答 1

12

只需将指标更改为correlation,使第一行变为:

Y=pdist(X, 'correlation')

但是,我相信代码可以简化为:

Z=linkage(X, 'single', 'correlation')
dendrogram(Z, color_threshold=0)

因为链接会为您处理 pdist。

于 2010-05-25T20:12:42.803 回答