【发布时间】:2018-09-07 20:30:26
【问题描述】:
我有一个函数可以计算基于变量VarName 的内容选择的列的分组数据库的平均值。当前函数使用dplyr::summarize_,但现在我看到它已被弃用,我想在它完全删除之前替换它。
但是,我不确定如何使用新的取消引用来实现我想要做的事情。这是我当前的代码:
means<-summarize_(group_by(dat,Grade),.dots = setNames(paste0('mean(',VarName,',na.rm=TRUE)'),'means'))
我尝试用means=mean(!!VarName, na.rm=TRUE) 替换.dots 部分,但这只是返回了VarName 中的字符串。我需要将 VarName 中的字符串评估为dat 中的列名,这样我就可以得到一个列名“means”和每个组的平均值。如何使用新的summarize 实现这一目标?
可重复性的样本数据集:
VarName<-"Things"
dat<-data.frame(students=c("a","b","c","d","e"),Grade=c(2,2,2,3,3),varA=c(41:45),Things=c(90,100,80,75,80))
谢谢!
【问题讨论】:
标签: r dplyr summarize nse quosure