我正在处理两个不同大小的数据帧.
matA : col1 col2 col3
row1 aa abc 123
row2 cc dfg 455
row3 ee efg 345
matB : col1 col4 col5
row1 aa a1 b1
row2 cc a2 b2
row3 dd a3 b3
row4 ee a4 b4
dim(matA) : 2000 * 3
dim(matB) : 4000 * 3
matC : col1 col2 col3 col4 col5
row1 : aa abc 123 a1 b1
row2 : cc dfg 455 a2 b2
row3 : dd efg 345 a3 b3
row4 : ee NA NA a4 b4
Run Code Online (Sandbox Code Playgroud)
我将两个合并到一个组合垫(matC)中,但是大小等于更大的mat(这里是matB),其中一些与mat1不匹配的行应该只是空或NAC中的mat.
想知道如何合并上面两个数据帧?
(未经测试!)?merge仔细阅读......特别注意all论点.
merge(matA,matB,by="col1",all=TRUE)
Run Code Online (Sandbox Code Playgroud)
从技术上讲(a)这些是数据帧而不是矩阵(b)by="col1"在这里是不必要的.