Учитывая мои панды df
, я делаю иерархическую кластеризацию матрицы корреляции следующим образом:
import scipy.cluster.hierarchy as sch
X = df.corr().values
d = sch.distance.pdist(X)
L = sch.linkage(d, method='complete')
C = sch.fcluster(L, 0.5*d.max(), 'distance')
Мне нужна помощь в выполнении следующей простой задачи. Я хотел бы новый df_res
с двумя столбцами: (1) Имя переменной, заданное столбцами моего исходного df
, (2) кластер, к которому она принадлежит, на основе результатов в C
. Что-то вроде:
VAR CLUSTER
var_1 1
var_2 2
var_3 1
var_4 1
var_5 2
Заранее спасибо!