2014-01-30 57 views
-2

我合併了兩個數據表,使用R merge()作爲C = merge(A,B,by =「id」);但在最終輸出(C)中, -/+符號更改爲零。 我不打算修改 -/+號。任何解決這個問題的方法?合併包含 -/+符號的兩個數據幀

數據幀一個:

id V1 V2 V3 
A 23 - 23 
B 44 - 35 
C 13 + 14 
D 20 - 12 

數據幀B:

id X Y Z 
A 16 - 45 
B 26 - 28 
C 29 + 44 
D 54 - 34 

輸出:

id V1 V2 V3 X Y Z 
A 23 0 23 16 0 45 
B 44 0 35 26 0 28 
C 13 0 14 29 0 44 
D 20 0 12 54 0 34 

預先感謝。

+1

我不能複製你的問題。你能發佈兩個樣本數據集(使用'dput')來複制你描述的問題嗎? – A5C1D2H2I1M1N2O1R2T1

回答

2

我不能發表評論,但對我來說,工作

R> x = data.frame(c(1, 2), c("+", "-")) 
R> y = data.frame(id=c(1, 2), sy=c("-", "+")) 
R> x = data.frame(id=c(1, 2), sx=c("+", "-")) 
R> x 
    id sx 
1 1 + 
2 2 - 
R> y 
    id sy 
1 1 - 
2 2 + 
R> merge(x, y, by="id") 
    id sx sy 
1 1 + - 
2 2 - +