我有几个系统发育GLS,希望找到一种更好的方法来汇总结果。我不会使用循环来获取多个PGLS,因为我将从不同的矩阵中获取多个特征。下面的示例:
library(caper) # for the pgls method
library(dplyr)
library(broom)
library(purrr)
data(shorebird)
birdie <- comparative.data(shorebird.tree, shorebird.data, Species)
pgls.EggVsMass <- pgls( Egg.Mass ~ M.Mass, birdie)
pgls.EggVsClutch <- pgls( Egg.Mass ~ Cl.size, birdie)
SUM.EggVsMass <- summary(pgls.EggVsMass)$coefficients
SUM.EggVsClutch <- summary(pgls.EggVsClutch)$coefficients
GL <- mget(ls(pattern = "SUM.*"))
tidier <- GL %>% purrr::map(., glance)
但是对象“ tidier”不是一个简单的小标题,我无法正确保存它。如何改善这种策略并获得摘要或系数中的信息?
一个类似的代码,但是对于 lm 起作用了,所以我想以类似的方式解决PGLS。在上述情况下,无法使用map_df。
LMTRAIT <- names(data)[-1] %>%
paste('trait1 ~', .) %>%
map(lm, data) %>%
purrr::map_df(., broom::glance) #
as_tibble(LMTRAIT)
答案 0 :(得分:0)
我通过 map_chr :: repurrrsive
找到了解决方案如果我想截取所有特征,就必须获得
GL$SUM.EggVsClutch[1]
GL$SUM.EggVsMass[1]
这是 map_chr
library(repurrrsive)
as_tibble(map_chr(GL, 1))