这是我想要的结果
ddf = data.frame(a=1:5,b = 10:14)
ddf %>% mutate(pr = a)
但是,我想要一个字符串变量
v = 'a'
它将替换mut中的“ a”。就像是:
ddf %>% mutate(pr = v)
上面的表达式不能满足我的要求,我想知道是否还有其他功能可以使用。
我能实现的唯一方法是
ddf = data.frame(a=1:5,b = 10:14)
v = 'a'
expr=paste0('ddf %>% mutate(pr = ',v,')')
eval(parse(text=expr))
有没有做到这一点的“真正” dplyr方法?
答案 0 :(得分:0)
这项工作可以吗?
ddf %>% mutate(pr = !!sym(v))
这给出了与示例相同的输入:
a b pr
1 10 1
2 11 2
3 12 3
4 13 4
5 14 5