如何在data.table中比lapply更快地分组多个列?

时间:2017-12-21 21:38:12

标签: r data.table

我需要将函数应用于多个列,然后聚合这些列。我知道我可以使用lapply完成此操作。

DT1 <- DT[, lapply(.SD, function(x) sum(x*C - x*exp(num)/sum(exp(num)))),by =.(A, B), .SDcols = c("col1", "col2")]

使用set或其他功能有更快的方法吗?

修改

经过进一步调查,我发现lapply是瓶颈。所以基本上问题可以简化为如下。

有更快的方法来计算以下内容吗?

DT1 <- DT[, lapply(.SD, sum),by =.(A, B), .SDcols = c("col1", "col2")]

0 个答案:

没有答案