Преобразование ndarray, сгенерированного hcluster, в строку Newick для использования с пакетом ete2

У меня есть список векторов, созданных с помощью:

import hcluster
import numpy as np
from ete2 import Tree

vecs = [np.array(i) for i in document_list] 

где document_list - это набор веб-документов, которые я анализирую. Затем я выполняю иерархическую кластеризацию:

Z = hcluster.linkage(vecs, metric='cosine') 

Это создает ndarray, такой как:

[[ 12.          19.           0.           1.        ]
[ 15.          21.           0.           3.        ]
[ 18.          22.           0.           4.        ]
[  3.          16.           0.           7.        ]
[  8.          23.           0.           6.        ]
[  5.          27.           0.           6.        ]
[  1.          28.           0.           7.        ]
[  0.          21.           0.           2.        ]
[  5.          29.           0.18350472   2.        ]
[  2.          10.           0.18350472   3.        ]
[ 47.          30.           0.29289577   9.        ]
[ 13.          28.           0.29289577  13.        ]
[ 73.          32.           0.29289577  18.        ]
[ 26.          12.           0.42264521   5.        ]
[  5.          33.           0.42264521  12.        ]
[ 14.          35.           0.42264521  12.        ]
[ 19.          35.           0.42264521  18.        ]
[  4.          20.           0.31174826   3.        ]
[ 34.          21.           0.5         19.        ]
[ 38.          29.           0.31174826  21.        ]]

Можно ли преобразовать этот ndarray в строку newick, которую можно передать конструктору ete2 Tree (), чтобы я мог рисовать и манипулировать деревом newick с помощью инструментов, предоставляемых ete2?

Имеет ли смысл даже попытаться сделать это, и если нет, то есть ли другой способ, которым я могу сгенерировать дерево / дендрограмму, используя те же данные и ete2 (я понимаю, что есть другие пакеты, которые могут рисовать дендрограммы, такие как дендропия и сам hcluster, но предпочли бы все равно использовать ete2)?

Спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос