当我按以下方式使用
然而,当我添加
我有点不明白,还是dplyr / broom出现了错误吗?
broom:::glance
时:library(dplyr)
library(broom)
mtcars %>% do(model = lm(mpg ~ wt, .)) %>% glance(model)
I get
Error in complete.cases(x) : invalid 'type' (list) of argument
然而,当我添加
group_by
时:mtcars %>% group_by(am) %>% do(model = lm(mpg ~ wt, .)) %>% glance(model)
确保给出预期结果:
Source: local data frame [2 x 12]
Groups: am
am r.squared adj.r.squared sigma statistic p.value df logLik AIC BIC deviance df.residual
1 0 0.589 0.565 2.53 24.4 1.25e-04 2 -43.5 93.1 95.9 108.7 17
2 1 0.826 0.810 2.69 52.3 1.69e-05 2 -30.2 66.4 68.1 79.3 11
我有点不明白,还是dplyr / broom出现了错误吗?
library(tidyr);unnest(list(mtcars, mtcars), gr) %>% group_by(gr) %>% do(model = lm(mpg ~ wt, .)) %>% glance(model)
可以工作。 - akrundo
的输出列表只有一个长度时,似乎确实无法正常工作。 - Paul Hiemstramtcars %>% group_by(g = 1) %>% do(model = lm(mpg ~ wt, .)) %>% glance(model)
。(在之后添加%>% ungroup() %>% select(-g)
以删除虚拟列) - David Robinson