Я использую иерархическую кластеризацию из seaborn.clustermap для кластеризации моих данных.Это прекрасно работает для визуализации кластеров в тепловой карте.Однако теперь я хотел бы извлечь все значения строк, которые назначены различным кластерам.
Вот так выглядят мои данные:
import pandas as pd
# load DataFrame
df = pd.read_csv('expression_data.txt', sep='\t', index_col=0)
df
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
Затем я выполняю кластеризацию с использованием seaborn следующим образом:
fig = sns.clustermap(df)
, которая создает следующую кластерную карту:
Для этого примера я могу вручную интерпретировать значения, принадлежащие каждому кластеру (например, этому кластеру TFRC и HSP90AA1).Однако я планирую провести этот кластерный анализ на гораздо больших наборах данных.
Итак, мой вопрос: кто-нибудь знает, как получить значения строк, принадлежащих каждому кластеру?
Спасибо,