【发布时间】:2020-11-23 09:12:56
【问题描述】:
我经常希望对我的数据的两个不同子组以及多个模型(例如,一个双变量模型和一个带有控件的模型)运行相同的回归。在我看来,嵌套、映射和整理的 purrr/tidyr/broom 工作流程应该适用于此。我了解如何在嵌套工作流程中创建子组,但我不了解如何运行多个模型并从每个模型中输出经过整理的回归结果列表。
例如:
mtcars %>%
nest(data=-c(vs)) %>%
mutate(
fit = map(data,~lm(mpg ~ cyl, data = .x)),
fit1 = map(data,~lm(mpg ~ cyl + gear + wt, data = .x)),
tidied = map(fit, tidy),
tidied1 = map(fit1, tidy),
) %>%
unnest(tidied) %>%
unnest(tidied1)
生成结果“Names must be unique”,大概是因为它认为我想对结果进行列绑定,但是bind_rows(tidied,tidied1)返回“object 'tidied' not found”。
有人知道怎么做吗?
【问题讨论】:
-
您想要的输出是什么样的?你真的想要一个整洁的对象列表吗?
-
这个答案对你打算做的有帮助吗?
-
我想要的输出是一个包含两个额外列的回归结果的整齐列表,一个指定子组(在本例中为“vs”),另一个指定模型(在本例中为“二元”和“ wcontrol"
标签: r tidyverse tidyr purrr broom