小编use*_*129的帖子

在R data.table中,如何将变量参数传递给表达式?

我遇到了一个小问题data.table.非常感谢您的帮助.我该怎么做呢:

getResult <- function(dt, expr, gby) {
  e <- substitute(expr)
  b <- substitute(gby)
  return(dt[,eval(e),by=b])
}

v1 <- "Sepal.Length"
v2 <- "Species"

dt <- data.table(iris)
rDT <- getResult(dt, sum(v1, na.rm=TRUE), v2)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

sum中的错误(v1,na.rm = TRUE):参数的'type'(字符)无效

现在,无论是v1v2从其他程序通过为字符型变量,所以我不能做到这一点v1<- quote(Sepal.Length),这似乎工作.

r parameter-passing data.table

18
推荐指数
1
解决办法
5254
查看次数

标签 统计

data.table ×1

parameter-passing ×1

r ×1