数据帧列乘以NA值

时间:2018-02-14 04:13:46

标签: r

我想生成一个新的C列,它是我的数据帧中A和B的乘法,但A和B可能包含随机NA值。如果A或B中的任何一个是NA,那么C也应该是NA。

我做的是

data$C <- data$A * data$B

,预期结果为

    A   B    C
[1] 2   3    6
[2] 4   NA   NA
[3] NA  2    NA
[4] 3.2 1.5  4.8

然而,实际结果给出了所有C的NA,即

    A   B    C
[1] 2   3    NA
[2] 4   NA   NA
[3] NA  2    NA
[4] 3.2 1.5  NA

我该如何解决这个问题?我正在使用Rstudio btw。提前谢谢

2 个答案:

答案 0 :(得分:1)

不确定你在做什么。这绝对有效:

sumx

答案 1 :(得分:1)

您可以使用ifelse声明:

data$C <- ifelse(is.na(data$A) || is.na.(data$B), NA, data$A * data$B)