我正在使用调查数据,并且在数据框中有两个因子变量,它们是相同的度量,但用于实验中的不同组。 (这是调查中的错误。) 所以现在我有:
df$a1 <- c(NA, NA, NA, 1, 0, 1)
df$a2 <- c(1, 1, 0, NA, NA, NA)
我如何将这两列合并一个值填入另一个的NA中?
答案 0 :(得分:1)
使用R base:
df <- data.frame(a1 = c(NA, NA, NA, 1, 0, 1),
a2 = c(1, 1, 0, NA, NA, NA))
df$a_comb <- ifelse(is.na(df$a1), df$a2, df$a1)
df
a1 a2 a_comb
1 NA 1 1
2 NA 1 1
3 NA 0 0
4 1 NA 1
5 0 NA 0
6 1 NA 1
答案 1 :(得分:0)
还可以:
df$combined <- dplyr::coalesce(df$a1, df$a2)
输出:
a1 a2 combined
1 NA 1 1
2 NA 1 1
3 NA 0 0
4 1 NA 1
5 0 NA 0
6 1 NA 1