【发布时间】:2017-01-08 05:01:13
【问题描述】:
我正在尝试使用 R 中的 dplyr 中的汇总和分组依据,但是当我使用变量代替显式调用汇总列时,它使用每行的整个数据集的 dist 总和,而不是正确分组。这可以很容易地从下面的 TestBad 和 TestGood 之间的区别中看出。我只是希望能够像在 TestBad 中一样使用 GraphVar 变量来复制 TestGood 的结果。
require("dplyr")
GraphVar <- "dist"
TestBad <- summarise(group_by_(cars,"speed"),Sum=sum(cars[[GraphVar]],na.rm=TRUE),Count=n())
testGood <- summarise(group_by_(cars,"speed"),Sum=sum(dist,na.rm=TRUE),Count=n())
谢谢!
【问题讨论】:
-
您需要来自 dplyr 的标准评估函数。查看示例 here 和 nse vignette here
-
@aosmith 他们已经在使用标准评估 (
group_by_) 并且遇到了麻烦,我认为。