使用dplyr::left_join时避免使用NA填充
我正在使用使用dplyr::left_join时避免使用NA填充,r,R,我正在使用dplyr中的left\u join连接两个数据帧。这里是一个MWE: library(dplyr) dfOne <- data.frame(1:10, 8*(1:10), c(2,4,6,8,10,12,14,16,18,20) ) colnames(dfOne)<-c("one", "two", "three") dfTwo <- data.frame(1:6,
dplyr
中的left\u join
连接两个数据帧。这里是一个MWE:
library(dplyr)
dfOne <- data.frame(1:10,
8*(1:10),
c(2,4,6,8,10,12,14,16,18,20) )
colnames(dfOne)<-c("one", "two", "three")
dfTwo <- data.frame(1:6,
8*(1:6),
c(2,4,6,8,10,12) )
colnames(dfTwo)<-c("one", "two", "three")
left_join(dfOne[c("one", "two")], dfTwo[c("two", "three")], by="two")
列
three
在dfTwo$one
中不存在dfTwo$two
的所有行中填充NA
。但是,是否可以使用left\u join
来避免NA
-值,而它们是空的(NULL
) 我不确定我是否正确理解了您的问题,但如果我理解正确,那么理解R中的NA与SQL中的Null相同可能会有所帮助。如果希望NA显示为“”,只需在左连接中命名数据帧(例如“lj_df”),并替换所有NA。您可以将“”替换为0或“Null”或任何其他您喜欢的内容
lj_df <- left_join(dfOne[c("one", "two")], dfTwo[c("two", "three")], by="two")
lj_df[is.na(lj_df)] <- ""
lj\u-df您想要内部连接
而不是左侧连接
?
lj_df <- left_join(dfOne[c("one", "two")], dfTwo[c("two", "three")], by="two")
lj_df[is.na(lj_df)] <- ""