首页 > 解决方案 > 如何用除NA之外的另一个数据框替换数据框中的所有值?

问题描述

我想用数据框 b 替换数据框 A 中的值

n = c(2, 3, 5) 
 s = c("aa", "bb", "cc") 
 b = c(TRUE, FALSE, TRUE) 
 df_A = data.frame(n, s, b) 


 n = c(2, 4, NA) 
 s = c("aa", NA, "bb") 
 b = c(TRUE, NA, TRUE) 
 df1_B = data.frame(n, s, b) 

我的预期结果如下:

n = c(2, 4, 5) 
 s = c("aa", "bb", "bb") 
 b = c(TRUE, FALSE, TRUE) 
 result = data.frame(n, s, b) 

谢谢你的帮助!

标签: rreplace

解决方案


这是一个方法 -

df1_B[is.na(df1_B)] <- df_A[is.na(df1_B)]

  n  s     b
1 2 aa  TRUE
2 4 bb FALSE
3 5 bb  TRUE

推荐阅读