data.table中的函数参数

Lau*_*šys -1 r data.table

我正在尝试计算数据表中每列的标准统计大小(即方差),可以通过以下方式创建:

library(data.table)
x <- rnorm(10)
y <- rnorm(10)
z <- rnorm(10)
dt <- data.table(x, y, z)
dt[,lapply(.SD, var)]
Run Code Online (Sandbox Code Playgroud)

而且效果很好.但是,如果我的数据表中有NA,我想使用函数参数,如:

dt[,lapply(.SD, var(na.rm = T))]
Run Code Online (Sandbox Code Playgroud)

现在我收到错误:

Error in match.fun(FUN) : 
  'var(x = dt, na.rm = T)' is not a function, character or symbol
Run Code Online (Sandbox Code Playgroud)

我无法想出这个解决方案.有谁知道如何处理这个问题?

jog*_*ogo 5

阅读文档lapply():FUN =是一个函数(不是对函数的调用)

dt[, lapply(.SD, var, na.rm=TRUE)]
Run Code Online (Sandbox Code Playgroud)