2014-04-03 52 views
0

你好,我想知道我怎麼在R中可以合併2個數據幀,有一個合併功能,但我想這樣做:R連接2個數據幀

data frame1 
    X Y Z 
1 1 1 1 
2 1 1 1 
3 1 1 1 
4 1 1 1 
5 1 1 1 

data frame 2 
    A B C 
1 2 2 2 
2 2 2 2 
3 2 2 2 



mergedataframe 
    X Y Z A B C 
1 1 1 1 
2 1 1 1 
3 1 1 1 2 2 2 
4 1 1 1 2 2 2 
5 1 1 1 2 2 2 

的認爲這是我必須同步3個CSV文件(數據幀),我不知道如何將它與R.

如果有人對此有什麼想法,感謝ü

我REDIT我的崗位我想喜歡我的合併數據幀:

個數據幀1

 X Y Z 
    1 1 1 1 
    2 1 1 1 
    3 1 1 1 
    4 1 1 1 
    5 1 1 1 
    6 1 1 1 

data frame 2 
    A B C 
1 2 2 2 
2 2 2 2 




mergedataframe 
    X Y Z A B C 
1 1 1 1 
2 1 1 1 
3 1 1 1 2 2 2 
4 1 1 1 2 2 2 
5 1 1 1 
6 1 1 1 

回答

0
df1 <- data.frame(X=rep(1,5),Y=1, Z=1) 
df2 <- data.frame(A=rep(2,3),B=2, C=2) 
#rownames(df2) <- 3:5 
rownames(df2) <- tail(rownames(df1), nrow(df2)) 

mergedataframe <- merge(df1,df2, by=0, all=TRUE) 
mergedataframe <- mergedataframe[,-1] 
mergedataframe 

    X Y Z A B C 
1 1 1 1 NA NA NA 
2 1 1 1 NA NA NA 
3 1 1 1 2 2 2 
4 1 1 1 2 2 2 
5 1 1 1 2 2 2 
+0

感謝ü爲你解答,但我不是那樣我所料,我必須(在您的文章等)合併,我的數據幀中的第3行,但你的代碼給我一個簡單的合併 – developer365

+0

我不明白你想要什麼 - 你是什麼意思的「簡單合併」? –

+0

'by = 0'由rowname合併。因此,如果你想在df1的末尾放置df2',你需要添加從df1尾部到df2:rownames(df2)< - tail(rownames(df1),nrow(df2) ))'合併前。 – Henrik