Dendrograma de poda em scipy (agrupamento hierárquico)

Eu tenho uma matriz de distância com cerca de 5000 entradas e uso de métodos de cluster hierárquico do scipy para agrupar a matriz. O código que eu uso para isso é o seguinte trecho:

<code>Y = fastcluster.linkage(D, method='centroid') # D-distance matrix
Z1 = sch.dendrogram(Y,truncate_mode='level', p=7,show_contracted=True)
</code>

Como o dendrograma ficará bastante denso com todos esses dados, eu uso o truncate_mode para podá-lo um pouco. Tudo isso funciona, mas me pergunto como posso descobrir quais das 5000 entradas originais pertencem a uma ramificação específica no dendrograma.

Eu tentei usar

<code> leaves = sch.leaves_list(Y)
</code>

para obter uma lista de folhas, mas isso usa a saída de ligação como indata, e enquanto eu posso ver a correspondência entre o dendrograma podado e a lista de folhas, torna-se um pouco complicado mapear as entradas originais manualmente para o dendrograma.

Para resumir: Existe uma maneira de listar todas as entradas originais na matriz de distância que pertence a uma ramificação em um dendrograma podado? Ou existem outros métodos de fazer isso que eu não conheço.

obrigado

questionAnswers(1)

yourAnswerToTheQuestion