我的问题是:假设我有一个包含以下列的现有数据框:UID、foo、result。结果已经部分填充。现在,第二个模型预测出额外的行,生成一个包含 UID 和 result 列的第二个数据框:(可在底部找到复制代码)
我现在想通过 UID 进行左连接,以得到以下结果列:
但是我无法让它工作,因为
数据帧代码:
## df_main
## UID foo result
## <dbl> <chr> <chr>
## 1 1 moo Cow
## 2 2 rum <NA>
## 3 3 oink <NA>
## 4 4 woof Dog
## 5 5 hiss <NA>
## new_prediction
## UID result
## <dbl> <chr>
## 1 3 Pig
## 2 5 Snake
我现在想通过 UID 进行左连接,以得到以下结果列:
## Cow
## <NA>
## Pig
## Dog
## Snake
但是我无法让它工作,因为
left_join(df_main, new_prediction, by="UID")
创建了result.x
和result.y
。有没有使用dplyr的方法,或者另一个好的连接列的步骤?我查看了各种函数,但最终决定手动循环所有行。我非常确定有一种更“R”的方法来做到这一点?数据帧代码:
df_main <- tibble(UID = c(1,2,3,4,5), foo=c("moo", "rum", "oink", "woof", "hiss"), result=c("Cow", NA, NA, "Dog", NA))
new_prediction <- tibble(UID = c(3,5), result = c("Pig", "Snake"))
dplyr
中的coalesce
函数。 - Jake Kaupp