2014-06-25 82 views
0

我想合併列,但面臨一個奇怪的問題。與重複項合併列錯誤

錯誤fix.by(by.y,Y): '由' 必須指定唯一地有效的列(多個)

我粘貼預期的結果的一個例子。

Table.one
COL1 COL2 COL3 COL4
一個34 76 gdfg
b 345 56987 FDG Ç323 5987 DFGD
一個151 51651 SFG b 156 515616 SG
Ç51 5156 gdfg

Table.two
COL1 COL5
b 15分配
C 15的
d 12
ë158

「想要導致」
COL1 COL2 COL3 COL4 COL5 一個34 76 gdfg 12 b 345 56987 FDG 15 Ç323 5987 DFGD 15 一個151 51651 SFG 12 b 156 515616 SG 15 ç51 5156 gdfg 15

我用Ý< -merge(Table.one,Table.two,通過= 「COL1」,all.x = T)

b ut不起作用。有人有補救措施嗎?

+2

請,[格式化數據(http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。 – mlt

+0

10-1表示你在'Table.Two'中沒有'col1' – stanekam

回答

0

我使用merge獲得「想要結果」中顯示的結果。 使用join來保存行的順序。

library(plyr) 
join(tb1,tb2, by="col1") 
col1 col2 col3 col4 col5 
1 a 34  76 gdfg 12 
2 b 345 56987 fdg 15 
3 c 323 5987 dfgd 15 
4 a 151 51651 sfg 12 
5 b 156 515616 sg 15 
6 c 51 5156 gdfg 15