我有两个数据帧(tibbles):
library(tidyverse)
dat_x <- tribble(
~id, ~month_1, ~month_2,
"A", NA, NA,
"B", NA, 0,
"C", 0, 0
)
dat_y <- tribble(
~id, ~month_1, ~month_2,
"A", 0, 0,
"B", 0, 0,
"C", 0, 30
)
我希望将dat_y
中的单元格替换为NA
,其中dat_x
中的相应单元格为NA
。预期产出:
> expected_output
# A tibble: 3 x 3
# id month_1 month_2
# <chr> <dbl> <dbl>
#1 A NA NA
#2 B NA 0
#3 C 0 30
我尝试使用purrr::map2()
但无法让它发挥作用。
map2(dat_x, dat_y, ~ .y[is.na(.x)] <- NA) #Error: object '.y' not found
有人为此提供了优雅的解决方案吗?越紧凑和可读性越好:)。
答案 0 :(得分:2)
dat_y[is.na(dat_x)] <- NA
应该够了吗?