如何从R中的另一列添加到现有列中

如何从R中的另一列添加到现有列中,r,dataframe,add,missing-data,R,Dataframe,Add,Missing Data,如果我有一个数据帧,比如在R中 id val1 val2 val3 1 1 40 44 1 5 N/A 44 2 1 42 N/A 3 13 N/A N/A 3 5 N/A 42 如何将val3中的值添加到val2中的不适用值,以便获得更完整的数据?看起来您不需要将val3的值添加到val2中的NA值。在这种情况下,您只需要获取val3,因为如果缺少val2,v

如果我有一个数据帧,比如在R中

id   val1   val2   val3
1     1      40     44
1     5      N/A    44
2     1      42     N/A
3     13     N/A    N/A
3     5      N/A    42

如何将
val3
中的值添加到
val2
中的不适用值,以便获得更完整的数据?

看起来您不需要将
val3
的值添加到
val2
中的
NA
值。在这种情况下,您只需要获取
val3
,因为如果缺少
val2
val3+val2=val3
(使用
na.rm=TRUE
设置)

考虑下面的例子

data <- data.frame(id = c(1, 1, 2, 3, 3),
                 val1 = c(1, 5, 1, 13, 5),
                 val2 = c(40, NA, 42, NA, NA),
                 val3 = c(44, 44, NA, NA, 42))

data$new.val2 <- ifelse(is.na(data$val2), # is val2 == NA?
                        data$val3, # if TRUE, take val3
                        data$val2) # if FALSE, take val2

数据我们如何知道您使用的是什么技术?顺便说一下,这个太宽了。欢迎来到stackoverflow(SO)!如果你同意你的问题,我们更有可能帮助你。我们可以利用它来向您展示如何解决您的问题。我还建议大家看一看,这通常也很好,可以证明您已经投入了一些精力。天哪,非常感谢:))