将带有NA的两个数字变量折叠为一个

时间:2014-03-11 20:10:50

标签: r numeric

我想知道如何将两个变量合并在一起。只要另一个人有价值,那个人就有NA。它们看起来像这样:

 a <- c(1,NA,NA,NA,5,6,NA,NA,9,NA)
 b <- c(NA,3,2,4,NA,NA,1,2,NA,3)
 c <- c(1,3,2,4,5,6,1,2,9,3)
 dataset <- data.frame(a, b, c)
 > dataset
    a  b c
1   1 NA 1
2  NA  3 3
3  NA  2 2
4  NA  4 4
5   5 NA 5
6   6 NA 6
7  NA  1 1
8  NA  2 2
9   9 NA 9
10 NA  3 3

怎样才能在R中手动创建变量c? 它们都是数字变量。

提前谢谢!

1 个答案:

答案 0 :(得分:3)

您可以使用ifelse

c <- ifelse(is.na(a), b, a)

如果两者都是NA,则c将为NA