R: data.table Одновременное разделение нескольких наборов данных - PullRequest
0 голосов
/ 05 мая 2020

В настоящее время я использую data.table в R и пытаюсь сократить список из нескольких таблиц данных до одной переменной c с именем «name». Я пробовал использовать lapply для этого, но безуспешно. Что-то не так с моим кодом?

Вот что я пробовал:

   data_tables<-c("one", "two", "three", "four", "five")
   lapply(mget(data_tables),function(x)x[, c("name")])

1 Ответ

3 голосов
/ 05 мая 2020

Мы можем использовать .(

library(data.table)
lapply(mget(data_tables),function(x)x[, .(name)])

Или указать столбец / столбцы в .SDcols и подмножество .SD

lapply(mget(data_tables),function(x)x[, .SD, .SDcols = 'name'])

Или, если мы хотим извлечь как вектор, используйте [[

lapply(mget(data_tables),function(x) x[["name"]])
...