我想确定一个大型data.table的列类.
colClasses <- sapply(DT, FUN=function(x)class(x)[1])
Run Code Online (Sandbox Code Playgroud)
有效,但显然本地副本存储在内存中:
> memory.size()
[1] 687.59
> colClasses <- sapply(DT, class)
> memory.size()
[1] 1346.21
Run Code Online (Sandbox Code Playgroud)
循环似乎不可能,因为data.table"with = FALSE"总是产生data.table.
一种快速而又非常脏的方法是:
DT1 <- DT[1, ]
colClasses <- sapply(DT1, FUN=function(x)class(x)[1])
Run Code Online (Sandbox Code Playgroud)
最优雅,最有效的方法是什么?