即使兩個組成數據幀具有基本相同的內容,合併也會給我一個虛假的大數據幀,導致來自NA的副本。我所追求的是一個合併的數據框,其中任何缺少的ID都有自己的列。當存在NA時導致重複的合併功能
下面是一個有兩個幾乎相同的數據框的工作示例,只是NA在不同的位置。在正常使用情況下,這些將是ID列,其中有更大的數據框與它們相關聯。
df1<-c("LJUL1994I", "GMAY1994J",NA,"WJUN1994A")
df2<-c("LJUL1994I", NA, "GMAY1994J","WJUN1994A")
我想是這樣工作的匹配:
LJUL1994I LJUL1994I
GMAY1994J GMAY1994J
WJUN1994A WJUN1994A
<NA>
<NA>
但是,我所得到的是這樣的......如果我搗鼓
merge(df1,df2)
x y
1 LJUL1994I LJUL1994I
2 GMAY1994J LJUL1994I
3 <NA> LJUL1994I
4 WJUN1994A LJUL1994I
5 LJUL1994I <NA>
6 GMAY1994J <NA>
7 <NA> <NA>
8 WJUN1994A <NA>
9 LJUL1994I GMAY1994J
10 GMAY1994J GMAY1994J
11 <NA> GMAY1994J
12 WJUN1994A GMAY1994J
13 LJUL1994I WJUN1994A
14 GMAY1994J WJUN1994A
15 <NA> WJUN1994A
16 WJUN1994A WJUN1994A
同樣的輸出情況與設置(即all=TRUE
,incomparables=NA
)
排序和綁定數據幀是一個脆弱的解決方案,因爲我想將其擴展到ID列長度不同的情況,並且可能有不同數量的NAs。
Base r解決方案是首選,但如果它們更優雅,我會採取基於軟件包的解決方案。
你希望的輸出中的「空白」與「NA」不同嗎? – MrFlick
爲什麼你需要2列。除非你正在做一個交叉產品(這是發生在這裏的事情),合併產生一個單一列與兩個向量的交集。如果您可以更好地說明您的使用情況,那麼幫助起來會更容易。 –