Я хотел бы передать переменную (содержащую имя столбца в виде строки) в качестве аргумента в data.table. Как мне это сделать?Как передать имя столбца переменной в data.table в R?
Рассмотрим data.table ниже:
myvariable <- "a"
myvariable_2 <- "b"
DT = data.table(ID = c("b","b","b","a","a","c"), a = 1:6, b = 7:12, c = 13:18)
DT
# ID a b c
# 1: b 1 7 13
# 2: b 2 8 14
# 3: b 3 9 15
# 4: a 4 10 16
# 5: a 5 11 17
# 6: c 6 12 18
- я могу использовать
subset
извлечь столбцы, то есть:subset(DT, TRUE, myvariable)
, но это просто выводит столбец/s - Как использовать
subset
для извлечения на основе столбца по некоторым критериям? например:extract myvariable column when myvariable_2 < 10
- Как извлечь сводную статистику по группам, передав имена столбцов в качестве переменных?
- Как построить описательные графики, используя data.table, передав имена столбцов в качестве переменных?
Я знаю, что это может быть проще в data.frame
т. Е. Передавая переменные как имена столбцов. Но я везде читал, что data.table
быстрее/эффективно, поэтому он хотел бы придерживаться его.
Имеет ли переключение между data.table
и data.frame
огромные последствия для работы с памятью/производительностью?
Я не хочу явно указывать имена столбцов, так как я хочу, чтобы этот фрагмент кода был повторно использован.
Я предлагаю вам чтения через https://rawgit.com/wiki/Rdatatable/data.table/vignettes/datatable-faq.html в качестве отправной точки. – thelatemail
В версии devel вы можете сделать это, как и в data.frame. Когда будет выпущена стабильная версия (1.9.8), вам больше не понадобится 'with = FALSE' –