结合R /重新编码NA中的调查项目

CGN*_*CGN 3 r survey

我有两个列表(来自多波调查),如下所示:

X1 X2
1  NA
NA  2
NA  NA
Run Code Online (Sandbox Code Playgroud)

如何轻松地将其组合成第三项,其中第三列始终采用列X1或X2的非NA值,并在两个值均为NA时编码NA?

Ric*_*ton 5

结合Gavin的使用within和Prasad的使用ifelse为我们提供了一个更简单的答案.

within(df, x3 <- ifelse(is.na(x1), x2, x1))
Run Code Online (Sandbox Code Playgroud)

ifelse不需要多次调用 - 当两个值都是时NA,您可以直接获取其中一个值.