我正在尝试创建一个新变量,只有当两列都没有NA时才减去两列,但只要其中一列有NA就有NA。当我试图减去列时,我只得到一列NA。例如,我正在编写命令:
d$x3 <- d$x2 - d$x1
当我使用上面的命令时,我得到:
x1 x2 x3
1 3 NA
1 NA NA
NA 3 NA
NA NA NA
基于在线查看其他帖子,我试图做一个解决方法,我将x1更改为负数,然后使用rowSums命令,但后来我得到了这个:
x3 <- rowSums(df[,c("x1","x2")], na.rm = TRUE)
x1 x2 x3
-1 3 2
-1 NA -1
NA 3 3
NA NA 0
我想要制作的是:
x1 x2 x3
1 3 2
1 NA NA
NA 3 NA
NA NA NA
感谢您的帮助!
df <- read.table( text="x1 x2
1 3
1 NA
NA 3
NA NA", header=T)