我需要根据行名将两个表合并为一个,每个表有172行和172列我的数据示例
#table 1
A B C
1 2 3
2 3 4
5 6 7
#table 2
A B C
1 3 8
2 4 6
5 4 2
我希望我的输出像这样
A B C
1 2 3
1 3 8
2 3 4
2 4 6
5 6 7
5 4 2
答案 0 :(得分:1)
mapply(rbind, table1, table2)
此功能适用于您的情况。但是,如果您拥有的表格如下:
A B C
1 1 2 3
2 2 3 4
3 5 6 7
A B C
1 5 4 2
2 2 4 6
3 1 3 8
上述功能将导致:
A B C
[1,] 1 2 3
[2,] 5 4 2
[3,] 2 3 4
[4,] 2 4 6
[5,] 5 6 7
[6,] 1 3 8
因此,如果您想获得所需的结果,可以使用此功能:
rbind(table1,table2)[order(rbind(table1,table2)$A),]
答案 1 :(得分:0)
rbind是您正在寻找的功能。
rbind(df1,df2)
答案 2 :(得分:0)
您可以使用mapply
,
mapply(rbind, table1, table2)
# A B C
#[1,] 1 2 3
#[2,] 1 3 8
#[3,] 2 3 4
#[4,] 2 4 6
#[5,] 5 6 7
#[6,] 5 4 2
答案 3 :(得分:0)
我们可以将rbind
与order
rbind(table1, table2)[order(c(seq_len(nrow(table1)), seq_len(nrow(table2)))),]
# A B C
#1 1 2 3
#4 1 3 8
#2 2 3 4
#5 2 4 6
#3 5 6 7
#6 5 4 2
答案 4 :(得分:-1)
您可以使用rbind(table1, table2)