【问题标题】:R: newick tree from list of listsR:列表列表中的newick树
【发布时间】:2013-04-05 05:26:51
【问题描述】:

我正在努力从孩子列表中创建一棵新树。我有一个列表列表,其中列表名称是父名称,列表元素是孩子。这是一个例子:

$`825`
[1] 824

$`824`
[1] 823

$`823`
[1] 822

$`822`
[1] 821

$`821`
[1] 820 777

$`820`
[1] 819 816 789 787 785 783

$`789`
[1] 788

$`787`
[1] 786

$`785`
[1] 784

$`783`
[1] 782

$`777`
[1] 776

因此我想要的输出是 newick 格式的 phylo 树,如下所示:

825(824(823(822(821(820(819,816,789(788),787,785(784),783(782)),777(776)))))

最好的方法是什么?一种方法是编写一个深度遍历一阶并创建树的递归函数。但是在 R 中,递归被认为是不好的。

谢谢。

【问题讨论】:

    标签: r tree dataframe phylogeny


    【解决方案1】:

    如果您正在寻找预装解决方案,我相信 bioconductor/ape 库有一个列表 -> newick 转换器

    http://www.r-phylo.org/wiki/HowTo/InputtingTrees

    否则,我前段时间写了一些代码来实现邻接算法;它非常简洁(在紧迫的期限内编写),但也许会有所帮助。

    https://github.com/rgrannell1/NJ/blob/master/main.R

    希望能有所帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-09
      • 1970-01-01
      • 1970-01-01
      • 2011-11-04
      • 2021-08-21
      • 2015-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多