Comment obtenir un clustering plat correspondant aux groupes de couleurs dans le dendrogramme créé par scipy

En utilisant le code posté icij'ai créé une belle clustering hiérarchique:

Comment obtenir un clustering plat correspondant aux groupes de couleurs dans le dendrogramme créé par scipy

Disons que le dendrogramme sur la gauche a été créé en faisant quelque chose comme

Y = sch.linkage(D, method='average') # D is a distance matrix
cutoff = 0.5*max(Y[:,2])
Z = sch.dendrogram(Y, orientation='right', color_threshold=cutoff)

Maintenant comment puis-je obtenir les indices des membres de chacun de la couleur et de clusters? Pour simplifier cette situation, ignorer le regroupement sur le haut, et de se concentrer uniquement sur le dendrogramme sur la gauche de la matrice.

Ces informations doivent être stockées dans le dendrogramme Z stockées variable. Il y a une fonction qui devrait faire exactement ce que je veux appelé fcluster (voir la documentation ici). Cependant je ne vois pas où je peux donner fcluster la même cutoff comme je l'ai spécifié dans la création du dendrogramme. Il semble que le seuil variable en fclustert doit être en termes de diverses fausser les mesures (inconsistentdistancemaxclustmonocrit). Des idées?

source d'informationauteur conradlee