R: перебрать столбцы в data.table

Я хочу определить классы столбцов большой таблицы данных.

colClasses <- sapply(DT, FUN=function(x)class(x)[1])

работает, но, очевидно, локальные копии хранятся в памяти:

> memory.size()
[1] 687.59
> colClasses <- sapply(DT, class)
> memory.size()
[1] 1346.21

Цикл кажется невозможным, потому что data.table "with = FALSE" всегда приводит к data.table.

Быстрый и очень грязный метод:

DT1 <- DT[1, ]
colClasses <- sapply(DT1, FUN=function(x)class(x)[1])

Какой самый эффективный и эффективный способ сделать это?

Ответы на вопрос(2)

Ваш ответ на вопрос