R - 运行 在多个系统发育树(multiPhylo 对象)上起作用
R - Running functions on multiple pylogenetic trees (multiPhylo objects)
我想 运行 跨多个系统发育的相同函数存储为 multiPhylo 对象。
例如,假设我有 1,000 棵树的 multiPhylo,我想对每棵树的 edge/branch 长度求和。我知道对于一棵树我可以使用:
sum(tree$edge.length)
但我不知道如何对 multiPhylo 中的所有树执行此操作。我敢肯定这很简单,但这超出了我的范围。有人可以帮忙吗?
谢谢
段
Class multiPhylo
是一个列表 (str(tree)
),因此提供了 R
用来处理列表的功能。要对单个树的边长求和,请使用 lapply
函数。
lapply(tree, FUN = function(x) sum(x$edge.length))
我想 运行 跨多个系统发育的相同函数存储为 multiPhylo 对象。
例如,假设我有 1,000 棵树的 multiPhylo,我想对每棵树的 edge/branch 长度求和。我知道对于一棵树我可以使用:
sum(tree$edge.length)
但我不知道如何对 multiPhylo 中的所有树执行此操作。我敢肯定这很简单,但这超出了我的范围。有人可以帮忙吗?
谢谢
段
Class multiPhylo
是一个列表 (str(tree)
),因此提供了 R
用来处理列表的功能。要对单个树的边长求和,请使用 lapply
函数。
lapply(tree, FUN = function(x) sum(x$edge.length))