R data.table join: SQL «выбрать *» как синтаксис в соединяемых таблицах?
У меня есть два data.tables со многими полями.
Я хочу объединить две таблицы, добавить некоторые вычисляемые поля и добавить все остальные поля из первой, второй или обеих таблиц (аналогично SQLselect a+b AS sum, DT1.*, DT2.* FROM...
) без ввода всех имен полей.
Как я могу это сделать (относительно простейшего синтаксиса и лучшей производительности)?
Упрощенный пример данных:
library(data.table)
DT1 = data.table(x=c("c", "a", "b", "a", "b"), a=1:5)
DT2 = data.table(x=c("d", "c", "b"), b=6:8)
Теперь я хочу объединить таблицы и добавить вычисляемое поле:
DT1[DT2, .(sum=a + b, <<< how to say DT1.*, DT2.* here? >>> ), on="x"]
Обновление 4 мая 2016 года: Вдохновленный пользователем jangorecki, я нашел запрос на функцию для этого:
Должен быть в состоянии ссылаться на я .SD во время соединения