R- data.table中的sapply的替代习惯是什么



我只想分别计算每个列的最大值。使用简单的sapply进入内存溢出:

 # dt is my data.table object
 res <- sapply(dt, max, na.rm=T) # fails due to memory problems

这是一张100万行和1000列的稀疏表,总体大小为11 GB。

我正在处理文件 train_date.csv 并使用以下代码行:

require(data.table)
dtDate <- fread(paste0(filePath, "train_date.csv"))
dim(dtDate)
require(pryr)
object_size(dtDate)

警告,将创建一个非常大的表!

dt <- as.data.table(matrix(runif(1000*1000000),ncol=1000))
dt[,lapply(.SD,max)]

最新更新