我有两个数据帧[df1,df2],其中我要求df2中的数据替换包含在其中的相同ID的任何和所有内容,但要保留df1中的所有其他数据。
在某些情况下,df2帧中的条目可能较少,这是我一直遇到的问题-如果可能,我希望删除该ID的所有条目并用新数据替换。
我已经尝试过合并和加入,但是没有得到我想要的结果。
df1
id dataEntered dayNumber
1: 1 1 1
2: 1 2 2
3: 1 3 3
4: 1 4 4
5: 1 9 5
6: 1 1 6
7: 1 2 7
8: 2 3 1
9: 2 5 2
10: 2 2 3
11: 3 3 1
12: 3 4 2
13: 3 5 3
14: 3 6 4
15: 3 7 5
16: 4 8 1
17: 4 4 2
18: 4 11 3
19: 5 3 1
20: 5 9 2
21: 5 5 3
df2
id dataEntered dayNumber
1: 4 5 1
2: 4 11 2
3: 4 2 3
4: 4 3 4
5: 4 1 5
6: 4 7 6
我想要的东西:
id dataEntered dayNumber
1: 1 1 1
2: 1 2 2
3: 1 3 3
4: 1 4 4
5: 1 9 5
6: 1 1 6
7: 1 2 7
8: 2 3 1
9: 2 5 2
10: 2 2 3
11: 3 3 1
12: 3 4 2
13: 3 5 3
14: 3 6 4
15: 3 7 5
16: 4 5 1
17: 4 11 2
18: 4 2 3
19: 4 3 4
20: 4 1 5
21: 4 7 6
22: 5 3 1
23: 5 9 2
24: 5 5 3
使用的代码:
dput(df1)
structure(list(id = c(1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5),
dataEntered = c(1, 2, 3, 4, 9, 1, 2, 3, 5, 2, 3, 4, 5, 6, 7, 8, 4, 11, 3, 9, 5),
dayNumber = c(1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 1, 2, 3, 4, 5, 1, 2, 3, 1, 2, 3)), class = c("data.table", "data.frame"))
dput(df2)
structure(list(id = c(4, 4, 4, 4, 4, 4),
dataEntered = c(5, 11, 2, 3, 1, 7),
dayNumber = c(1, 2, 3, 4, 5, 6)), class = c("data.table", "data.frame"))