我需要將兩個表合併成一個基於行名稱的兩個表,每個表有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
我需要將兩個表合併成一個基於行名稱的兩個表,每個表有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
您可以使用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
現在我們可以做同樣的列。我使用了mapply(cbind,table1,table2),但它沒有添加到相鄰的列 –
我不確定你的意思 – Sotos
rbind是您正在尋找的功能。
rbind(df1,df2)
我們可以使用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
您可以使用rbind(table1, table2)
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),]
嘗試'mapply(rbind,table1,table2)' – Sotos
謝謝你。它工作正常:) –