Как в R data.table передать переменные параметры выражению?

Я столкнулся с небольшой проблемой R с 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)

Я получаю следующую ошибку:

Ошибка в сумме (v1, na.rm = TRUE): недопустимый «тип» (символ) аргумент

Теперь и v1, и v2передаются из другой программы как символьные переменные, поэтому я не могу этого сделать v1<- quote(Sepal.Length), что, кажется, работает.

18
задан user1157129 20 May 2012 в 18:27
поделиться