【发布时间】:2015-05-24 22:00:55
【问题描述】:
对于措辞不当的问题,我感到很抱歉,但我认为这可能是一个我还没有找到答案的常见问题。
ggplot/dplyr 不使用字符类型调用列名来过滤/分组:
library(dplyr)
library(ggplot2)
mtcars %>%
filter(gear > 4)
#OR
enter code here
ggplot(data = mtcars, aes(x = disp, y = wt, color = factor(gear))) + geom_point()
...所以如果想构建一个函数来使用这些非字符类型将齿轮换到不同的列,我该怎么做?我需要打电话给assign吗?
这是一个过滤的 hacky 解决方案,可能有助于澄清我的问题:
filter_foo <- function(data, column, value) {
data[column > value,]
}
filter_foo(mtcars, mtcars$gear , 4)
【问题讨论】:
-
看来你可以看看
ggplot2::aes_string和standard evaluation indplyr。