簡體   English   中英

匹配兩列不同的數據幀

[英]Matching two columns of different data frames

如何使用R匹配不同數據幀的兩列? 匹配值應在同一位置對齊,而缺失值將為NA。

輸入:

df1$A: w x y 
df2$B: x y z 

預期輸出數據幀:

w  x y NA
NA x y z 

應該有一個更好的方法來表示這一點,但是現在我可以弄清楚了。 如@akrun在評論中所述,您可以使用match

unique(rbind(cbind(as.character(df1$A), as.character(df2$B[match(df1$A, df2$B)])), 
             cbind(as.character(df2$B), as.character(df1$A[match(df2$B, df1$A)]))))



#    [,1] [,2]
#[1,] "w"  NA  
#[2,] "x"  "x" 
#[3,] "y"  "y" 
#[4,] "z"  NA  

好吧,這很好...

df1$B <- ifelse(df1$A %in% df2$B, as.character(df1$A), NA)

df3 <- merge(df1,df2,by='B',all.x = T,all.y = T)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM