我发现自己在 R 中多次执行“条件左连接”。举个例子;如果您有两个数据框,例如:
> df
a b
1 1 0
2 2 0
> other.df
a b
1 2 3
目标是最终得到这个数据框:
> final.df
a b
1 1 0
2 2 3
到目前为止我写的代码:
c <- merge(df, other.df, by=c("a"), all.x = TRUE)
c[is.na(c$b.y),]$b.y <- 0
d<-subset(c, select=c("a","b.y"))
colnames(d)[2]<-b
最终得到我想要的结果。
有效地在四行中执行此操作会使代码非常不透明。有没有更好、更简单的方法来做到这一点?