fun <- function(dataframe, var){
print(data$var)
}
dataset <- data.frame(a = 1:6, b = 12:17, c = 3:8)
fun(dataset, a)
基本上,我想做类似这样的事情,我可以将其中一个列名称传递给一个函数,并且稍后可以使用它来调用该列。
我知道group_by函数以某种方式处理它,但是当我进入调试模式并试图解决它时,我无法做出我想要的实际操作的正面或反面。
答案 0 :(得分:-1)
要执行此操作dplyr
- 就像,您需要使用tidyevaluation。首先,您需要enquo()
var
,然后使用var
引用!!
:
library(dplyr)
fun <- function(dataframe, var){
var <- enquo(var)
select(dataframe, !!var)
}
dataset <- data.frame(a = 1:6, b = 12:17, c = 3:8)
fun(dataset, a)
你可以找到一个好的tidyeval
tuto here。
最好,
科林