【发布时间】:2015-09-04 11:38:20
【问题描述】:
我正在对基因表达数据进行层次聚类。我的结果数据形状像树状图。我想将整个树保存在python中的某个数据结构中,并在每个节点中进行一些计算(我认为是递归的)。对于每个节点,我都知道那里的基因和一些额外的信息(GO、p 值等) 你对如何以我可以遍历整个树的方式在 python 中存储这种数据有什么建议吗? 我的第一个想法是字典列表:
clusters=[{'id': 1, 'cluster': [gen1, gen2,...], 'size': ... , 'ChildIDs': ... , 'ParentID': ... , 'distance': ..., 'score': ...}, {'id': 2, ...}, ... ]
但由于集群是嵌套的,所以我认为存储每个集群的基因效率不高。
如果有人对如何保存此类信息有更好的了解,我将不胜感激:)
【问题讨论】:
-
你可以看看this implementation of hierarchical clustering。它将信息存储在Dendogram class 中。如果您查看
Dendogram类的方法show,您可能会了解它在做什么。我不知道你在谈论多少个基因,可能很多,以及这种实现的效率如何......无论如何希望它有所帮助。
标签: python dictionary