我是R和dplyr包的新手.我试图将变量传递给dplyr group_by,我们可以改变/改变它.例如,在使用航班数据集时,我可以使用以下代码获取任何列(或多列)的行数:
library(nycflights13)
flights %>% group_by(origin) %>% tally()
flights %>% group_by(carrier) %>% tally()
flights %>% group_by(origin,carrier) %>% tally()
Run Code Online (Sandbox Code Playgroud)
但是如果我想传递所用列的名称,将group_by作为变量传递,则在使用多个列名时它不起作用.
group="carrier"
flights %>% group_by_(group) %>% tally()
group="origin"
flights %>% group_by_(group) %>% tally()
group=c("origin","carrier") #This does not work
flights %>% group_by_(group) %>% tally()
Run Code Online (Sandbox Code Playgroud)
我将不胜感激任何帮助.谢谢.
Jak*_*upp 15
你几乎得到它,你只需要使用.dots参数传递你的分组变量.
group <- c("origin","carrier")
flights %>%
group_by_(.dots = group) %>%
tally()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2237 次 |
| 最近记录: |