Python Как сделать дендрограмму из кадра данных

Я пытаюсь найти дендрограмму данных, созданных с помощью пакета PANDAS в Python. Пример данных приведен ниже.

import numpy as np
from pandas import *
import matplotlib.pyplot as plt
from hcluster import pdist, linkage, dendrogram
from numpy.random import rand

Index= ['aaa','bbb','ccc','ddd','eee']
Cols = ['A', 'B', 'C','D']
df = DataFrame(abs(np.random.randn(5, 4)), index= Index, columns=Cols)


>>> df
            A         B         C         D
aaa  0.987415  0.192240  0.709559  0.317106
bbb  0.856932  0.252441  1.183127  0.712855
ccc  1.687198  0.462673  1.046469  0.159287
ddd  0.977152  2.657582  0.491975  0.027280
eee  0.120464  0.945034  0.142658  0.537024
>>> 

X = df.T.values #Transpose values 
Y = pdist(X)
Z = linkage(Y)
dendrogram(Z)

Приведенный выше код генерирует дендрограмму, но пропускает имена столбцов. Как я могу следить за тем же.

1 ответ

По предложению @Wouter Overmiere, следующее сработало для меня.

X = df.T.values #Transpose values 
Y = pdist(X)
Z = linkage(Y)
dendrogram(Z, labels = df.columns)
Другие вопросы по тегам