【发布时间】:2015-07-21 14:00:21
【问题描述】:
我有一个带有 glimpse() 的数据框“DF”:
Observations: 1244160
Variables:
$ Test (fctr) 72001.txt, 72002.txt, 72003.txt, 72004.txt, 72005.txt,...
$ x (int) 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1...
$ y (int) 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2...
$ Value (dbl) -77.111111, -13.111111, 13.888889, 235.888889, 138.8888...
对于每个测试,我想使用数据的子集建模“值”:
- 函数:值~x + y
- 数据:(x, y) / 0
然后,我想使用这些模型预测“DF”中所有数据的“值”。
对于这些计算,我想使用dplyr。但是,我找不到这样做的方法。这是我最后一次尝试:
DF %>%
group_by(Test) %>%
do({
mod = lm(Value ~ x + y, data = (. %>% filter((x > 0) & (x < 6) & (y > 0) & (y < 6))))
print(mod)
Pred <- predict(mod, .)
data.frame(. , Pred)
})
glimpse()
但它失败了。你能帮帮我吗?
可重现的示例
为了测试答案,我们可以使用一个虚拟的可重现数据框,例如 mtcars:
mtcars %>%
group_by(cyl) %>%
do({
mod = lm(mpg ~ wt + qsec, data = . %>% filter(vs == 0))
print(mod)
Pred <- predict(mod)
data.frame(. , Pred)
})
glimpse()
【问题讨论】:
标签: r regression dplyr