Предположим, у меня есть следующие data.tables:
dt1 <- data.table(id_1 = 1:4,
name_1 = c("a", "b", "a", "b"),
score_1 = 11:14)
# dt1:
id_1 name_1 score_1
1: 1 a 11
2: 2 b 12
3: 3 a 13
4: 4 b 14
dt2 <- data.table(id_2 = 1:5,
name_2 = rep("a", 5),
score_2 = 21:25)
# dt2:
id_2 name_2 score_2
1: 1 a 21
2: 2 a 22
3: 3 a 23
4: 4 a 24
5: 5 a 25
Как я могу объединить dt1
и dt2
выше, используя два столбца, id_1
и name_1
, чтобы получить следующие данные таблица?
# desired data.table:
id_1 name_1 score_1 score_2
1: 1 a 11 21
2: 2 b 12 NA
3: 3 a 13 23
4: 4 b 14 NA
Я попробовал приведенный ниже код, но он не выдает нужную таблицу данных выше.
dt3 <- dt1[dt2, on = .(id_1 = id_2, name_1 = name_2)]
Кроме того, кто-то может указать мне на хорошую виньетку, например тот, что ниже, охватывает топи c объединения / слияния?
https://cran.r-project.org/web/packages/data.table/vignettes/datatable-intro.html