Создание кластеров с использованием корреляционной матрицы в Python с повторяющимися элементами - PullRequest
0 голосов
/ 27 января 2020

Я сослался на этот ответ и добился большого успеха, используя его, поскольку вывод, который он предоставляет, кажется несколько точным. Я также немного изменил его так, чтобы я мог кодировать желаемое количество кластеров, например так:

df = pd.DataFrame(A)
corr = df.corr().values

cluster_count = 50
pdist = spc.distance.pdist(corr)
linkage = spc.linkage(pdist, method='complete')
idx = spc.fcluster(linkage, cluster_count, 'maxclust')

Мой вопрос заключается в том, можно ли изменить этот код, чтобы включить в него потенциальную принадлежность элементов к нескольким кластерам, если они сильно выровнены с двумя или более из них.

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

В настоящее время я считаю немного прискорбным, что некоторые элементы должны «выбрать» один кластер, частью которого они являются, когда они сильно выровнены с кратными.

...