【发布时间】:2019-04-22 06:35:16
【问题描述】:
基于 this stackoverflow topic,我想提取系数。
从“钻石”数据集中,我使用 nest() 函数根据两个分类变量拆分钻石数据集:颜色和切工。然后为每个模型计算系数和 r_square 并将它们存储为数据帧。
我通过这些代码成功地做到了:
df_dia <- diamonds %>%
group_by(color, cut) %>% nest() %>%
# generate summary
mutate(fit = map(data, ~lm(price ~ carat, data=.)), summary= map(fit, glance)) %>%
unnest(summary) %>%
# generate coef
mutate(fit = map(data, ~lm(price ~ carat, data=.) %>%coef %>%
as.list %>% as_tibble)) %>%
unnest(fit) %>% unnest(data) %>%
select(color, cut, `(Intercept)`, carat, r.squared)
但是,它效率不高,因为它必须进行 2 次回归。有没有更好的办法?
【问题讨论】:
标签: r regression