我有两个数据帧:
df1
Col1 Col2 Col3 Col4
1 0 3 5
NA 1 NA 0
2 3 NA 5
df2
Col1 Col2 Col3 Col4
7 0 5 7
0 8 0 0
9 9 6 2
如何将df2
替换为NA
与df1
相同的位置?
我希望我的最终df3看起来像这样:
Col1 Col2 Col3 Col4
7 0 5 7
NA 8 NA 0
9 9 NA 2
答案 0 :(得分:3)
在我看来,与tidyverse
:
df2[is.na(df1)] <- NA
给出:
> df2 Col1 Col2 Col3 Col4 1 7 0 5 7 2 NA 8 NA 0 3 9 9 NA 2
如果你真的需要df3
:
df3 <- df2
df3[is.na(df1)] <- NA
答案 1 :(得分:0)
df3=replace(df2,is.na(df1),NA)
df3
Col1 Col2 Col3 Col4
1 7 0 5 7
2 NA 8 NA 0
3 9 9 NA 2
甚至
http