我想从数据帧df1和df2创建一个新的数据帧df3。数据框包含zipcodes和状态。一个数据框具有比另一个更多的邮政编码。我希望将它们组合起来并为没有其他文件中相应Zip代码值的Zipcodes添加NA。
df3
ZIP STATE Total2 Total1
36541 AL 6747 11190
36542 AL 8093 10647
36549 AL 9404 NA
36551 AL 7048 10656
36561 AL 5104 5044
.
.
.
df1
ZIP STATE Total1
36541 AL 11190
36542 AL 10647
36551 AL 10656
36561 AL 5044
32314 FL 10624
32320 FL 5705
32322 FL 11457
32324 FL 5926
32508 FL 8885
32511 FL 9428
32514 FL 6168
32526 FL 11998
32533 FL 11188
32534 FL 11188
df2
ZIP STATE Total2
36541 AL 6747
36542 AL 8093
36549 AL 9404
36551 AL 7048
36561 AL 5104
32314 FL 8959
32320 FL 9237
32321 FL 11417
32322 FL 5467
32324 FL 6672
32508 FL 6085
32511 FL 8782
32514 FL 11297
32522 FL 6892
32526 FL 9497
32533 FL 9114
32534 FL 8594
答案 0 :(得分:3)
merge()
应该这样做:
merge(df1, df2, all=T)
答案 1 :(得分:1)
rbind.fill
包的 plyr
可能就是您要找的内容:
> plyr::rbind.fill(df1, df3, df2)
ZIP STATE Total1 Total2
1 36541 AL 11190 NA
2 36542 AL 10647 NA
3 36551 AL 10656 NA
4 36561 AL 5044 NA
5 32314 FL 10624 NA
6 32320 FL 5705 NA
7 32322 FL 11457 NA
8 32324 FL 5926 NA
9 32508 FL 8885 NA
10 32511 FL 9428 NA
11 32514 FL 6168 NA
12 32526 FL 11998 NA
13 32533 FL 11188 NA
14 32534 FL 11188 NA
15 36541 AL 11190 6747
16 36542 AL 10647 8093
17 36549 AL NA 9404
18 36551 AL 10656 7048
19 36561 AL 5044 5104
20 36541 AL NA 6747
21 36542 AL NA 8093
22 36549 AL NA 9404
23 36551 AL NA 7048
24 36561 AL NA 5104
25 32314 FL NA 8959
26 32320 FL NA 9237
27 32321 FL NA 11417
28 32322 FL NA 5467
29 32324 FL NA 6672
30 32508 FL NA 6085
31 32511 FL NA 8782
32 32514 FL NA 11297
33 32522 FL NA 6892
34 32526 FL NA 9497
35 32533 FL NA 9114
36 32534 FL NA 8594