Jak obliczyć przypisania klastrów z macierzy powiązań / odległości w scipy w Pythonie?
jeśli masz to hierarchiczne wywołanie grupowania w scipy w Pythonie:
from scipy.cluster.hierarchy import linkage
# dist_matrix is long form distance matrix
linkage_matrix = linkage(squareform(dist_matrix), linkage_method)
to, co jest skutecznym sposobem przejścia od przypisywania do poszczególnych punktów? tj. wektor długościN
gdzieN
to liczba punktów, gdzie każdy wpisi
jest numerem klastra punktui
, biorąc pod uwagę liczbę klastrów wygenerowanych przez dany prógthresh
na wynikowym klastrowaniu?
Aby wyjaśnić: Numer klastra byłby klastrem, w którym znajduje się po zastosowaniu progu do drzewa. W takim przypadku otrzymasz unikalny klaster dla każdego węzła liścia dla klastra, w którym się znajduje. Unikatowy w tym sensie, że każdy punkt należy do jednego „najbardziej specyficznego klastra”, który jest określony przez próg, w którym wycina się dendrogram.
wiem toscipy.cluster.hierarchy.fclusterdata
daje ci to przypisanie klastra jako jego wartość zwracaną, ale zaczynam od niestandardowej matrycy odległości i metryki odległości, więc nie mogę użyćfclusterdata
. Pytanie sprowadza się do: jak mogę obliczyć cofclusterdata
czy obliczenia - zadania klastra?