r - 如何将多个函数应用于R中的data.table

标签 r data.table

我尝试这样做:

DT <- data.table(Monthname = month.name, id = 1:3, a = abs(rnorm(12)), b = abs(rnorm(12)), c = abs(rnorm(12)), d = abs(rnorm(12)))
setkey(DT, id)
ANS <- DT[,lapply(.SD, mean)/lapply(.SD, sd), by = 'id', .SDcols = names(DT)[-1]]

但它给出了错误。那么,有什么方法可以做到这一点吗?谢谢。

最佳答案

就像在其他上下文中使用 lapply 一样:

ANS <- DT[,lapply(.SD, function(x) mean(x)/sd(x) ), by = 'id', .SDcols = names(DT)[-1]]

关于r - 如何将多个函数应用于R中的data.table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21822335/

相关文章:

r - 在 R 中返回 data.table 或 data.frame 时避免重复内存分配的技巧?

r - fread: na.strings 中的空字符串 ("") 不会被解释为 NA

r - 如何使用 R 中的 k-means 聚类技术获得与数据相对应的聚类编号?

r - 在data.Table中使用反向选择按引用删除多列

r - 其他 data.table 中的查找求和太慢

r - 以编程方式将不同的函数应用于 data.table R 中的不同列

R:如何旋转副 Y Axis 的标签?? {根据}

javascript - 在 R 中,如何在 Sankey Graph 的链接/路径上显示值?

r - 完全删除 R 中的数据帧行。停止 table() 为删除的数据返回 0

r - 在带时间戳的事务的 data.table 中使用 zoo 的 rollsum