【发布时间】:2020-11-12 07:04:12
【问题描述】:
我有一个 data.table
dt = structure(list(x = 1:3, y = 3:5), .Names = c("x", "y"), row.names = c(NA, -3L), class = c("data.table", "data.frame"))
另外,我有一个给定的函数,它以行和数据集作为参数。例如,让
function_sum <- function(i, dataset){
x <- as.numeric(dataset[i,1])
y <- as.numeric(dataset[i,2])
x+y
}
我需要将此函数应用于我数据集中的每一行,但不知道该怎么做。
这行不通
dt[, function_sum(i=.SDrow, dataset=dt), by = seq_len(nrow(dt))]
【问题讨论】:
-
为什么函数没有向量化?不能在函数外写一个向量化的函数和子集吗?