如何将变量VAR1的"NA"替换为第二个变量VAR2的值,以在R中创建第三个变量VAR3?数据如下所示:
VAR1: VAR2:
1 NA
3 NA
NA 1
NA 3
2 NA
NA 1
Run Code Online (Sandbox Code Playgroud)
之后它应该看起来像这样:
VAR1: VAR2: VAR3:
1 NA 1
3 NA 3
NA 1 1
NA 3 3
2 NA 2
NA 1 1
Run Code Online (Sandbox Code Playgroud)
一种方法是使用ifelse:
DF <- transform(DF, VAR3 = ifelse(!is.na(VAR1), VAR1, VAR2))
Run Code Online (Sandbox Code Playgroud)
其中,transform用于避免输入DF$一遍又一遍,但也许你会喜欢:
DF$VAR3 <- ifelse(!is.na(DF$VAR1), DF$VAR1, DF$VAR2)
Run Code Online (Sandbox Code Playgroud)