Df1:
ID Score Test
1 97 1
1 98 2
2 85 1
2 NA 2
3 NA 1
3 79 2
Df2:
ID Score Test
2 70 2
3 60 1
期望结果:
ID Score Test
1 97 1
1 98 2
2 85 1
2 70 2
3 60 1
3 79 2
实际上,我有一个更大的数据框架和总共5个测试。我想使用DF2中的分数更新DF1中的NA分数。如何在R中执行此操作?
这行吗:
library(dplyr)
df %>% left_join(df1, by = c('ID','Test')) %>%
mutate(Score = coalesce(Score.x, Score.y)) %>%
select(-2,-4) %>% relocate(1,3,2)
# A tibble: 6 x 3
ID Score Test
<dbl> <dbl> <dbl>
1 1 97 1
2 1 98 2
3 2 85 1
4 2 70 2
5 3 60 1
6 3 79 2