【发布时间】:2018-11-29 00:14:17
【问题描述】:
我尝试在 R 中基于一个共同的 ID 但不同的列组合两个 data.tables,我还想删除重复的 ID 行。我的方法是:
dt1 dt2
ID X1 Y1 Z1 ID X2 Y2 Z2
1 a1 a2 a3 1 A1 A2 A3
2 b1 b2 b3 2 B1 NA B3
3 c1 c2 NA 3 C1 C2 C3
4 d1 d2 d3 5 E1 E2 E3
6 f1 f2 f3 6 F1 F2 F3
使用 rbind(dt1, dt2, fill = TRUE) 给我:
dt_merged
ID X1 Y1 Z1 X2 Y2 Z2
1 a1 a2 a3 NA NA NA
1 NA NA NA A1 A2 A3
2 b1 b2 b3 NA NA NA
2 NA NA NA B1 NA B3
3 c1 c2 NA NA NA NA
3 NA NA NA C1 C2 C3
4 d1 d2 d3 NA NA NA
5 NA NA NA E1 E2 E3
6 f1 f2 f3 NA NA NA
6 NA NA NA F1 F2 F3
我现在的问题是我不知道如何合并重复的行 ID 并使用重复 ID 行中的相应数据填充 NA。我想要的输出 data.table 将是:
ID X1 Y1 Z1 X2 Y2 Z2
1 a1 a2 a3 A1 A2 A3
2 b1 b2 b3 B1 NA B3
3 c1 c2 NA C1 C2 C3
4 d1 d2 d3 NA NA NA
5 NA NA NA E1 E2 E3
6 f1 f2 f3 F1 F2 F3
我希望我的描述足以让您大致了解我的问题。任何形式的帮助都会受到我的高度赞赏,并请原谅我提出愚蠢的问题,但 data.table 争吵有时会给我带来很大的困难。
【问题讨论】:
标签: r merge duplicates data.table