相关疑难解决方法(0)

如何在scipy创建的树形图中获得与颜色簇相对应的平面聚类

使用这里发布的代码,我创建了一个很好的层次聚类:

scipy树状图

让我们说左边的树状图是通过做类似的东西来创建的

Y = sch.linkage(D, method='average') # D is a distance matrix
cutoff = 0.5*max(Y[:,2])
Z = sch.dendrogram(Y, orientation='right', color_threshold=cutoff)
Run Code Online (Sandbox Code Playgroud)

现在我如何获得每个彩色簇的成员的索引? 要简化这种情况,请忽略顶部的聚类,并仅关注矩阵左侧的树形图.

该信息应存储在树形图Z存储变量中.有一个函数应该做我想要的事情fcluster(参见这里的文档).但是,我无法看到我在fcluster中的位置与cutoff我在树形图的创建中指定的相同.看来,在该阈值可变fcluster,t必须在不同的晦涩测量(而言inconsistent,distance,maxclust,monocrit).有任何想法吗?

python cluster-analysis hierarchical-clustering hierarchical scipy

18
推荐指数
2
解决办法
2万
查看次数

在距离高度处从 SciPy 切割树状图/聚类树

我正在尝试学习如何使用dendrogramsusing . 我想要获得集群并能够将它们可视化;我听说是最好的办法。PythonSciPyhierarchical clusteringdendrograms

如何以特定距离“砍伐”树木?

在这个例子中,我只想将其远距离切割1.6 在此输入图像描述

我在https://joernhees.de/blog/2015/08/26/scipy-hierarchical-clustering-and-dendrogram-tutorial/#Inconsistency-Method上查找了教程,但这家伙使用**kwargs(他称为他的阈值max_d)

这是我的代码和下面的图;为了可重复性,我尝试尽可能地对其进行注释:

from __future__ import print_function
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
from scipy.cluster.hierarchy import dendrogram,linkage,fcluster
from scipy.spatial import distance
np.random.seed(424173239) #43984

#Dims
n,m = 20,7

#DataFrame: rows = Samples, cols = Attributes
attributes = ["a" + str(j) for j in range(m)]
DF_data = pd.DataFrame(np.random.random((n, m)), columns = attributes)

A_dist = distance.cdist(DF_data.as_matrix().T, DF_data.as_matrix().T)

#(i) . Do …
Run Code Online (Sandbox Code Playgroud)

python numpy hierarchical-clustering dendrogram scipy

5
推荐指数
1
解决办法
6839
查看次数

使用seaborn clustermap提取层次聚类中的簇行

我正在使用seaborn.clustermap 中的分层聚类来对我的数据进行聚类。这可以很好地可视化热图中的集群。但是,现在我想提取分配给不同集群的所有行值。

这是我的数据的样子:

import pandas as pd

# load DataFrame 
df = pd.read_csv('expression_data.txt', sep='\t', index_col=0)

df 
Run Code Online (Sandbox Code Playgroud)
    log_HU1         log_HU2
EEF1A1  13.439499   13.746856
HSPA8   13.169191   12.983910
FTH1    13.861164   13.511200
PABPC1  12.142340   11.885885
TFRC    11.261368   10.433607
RPL26   13.837205   13.934710
NPM1    12.381585   11.956855
RPS4X   13.359880   12.588574
EEF2    11.076926   11.379336
RPS11   13.212654   13.915813
RPS2    12.910164   13.009184
RPL11   13.498649   13.453234
CA1 9.060244    13.152061
RPS3    11.243343   11.431791
YBX1    12.135316   12.100374
ACTB    11.592359   12.108637
RPL4    12.168588   12.184330
HSP90AA1    10.776370   10.550427
HSP90AB1    11.200892   11.457365
NCL 11.366145   11.060236
Run Code Online (Sandbox Code Playgroud)

然后我使用seaborn执行聚类,如下所示:

fig …
Run Code Online (Sandbox Code Playgroud)

python hierarchical-clustering pandas seaborn

5
推荐指数
1
解决办法
4663
查看次数