如果声明 - 条件长度大于1

use*_*648 1 if-statement r

我有两列(df$Zdf$A)

我基本上想说:如果df $ Z小于5,那么填写df$A一个NA如果没有那么df$A就单独留下.我尝试过这些东西,但不确定我哪里出错或错误信息的含义.

if(df$X<5){df$A <- NA}
Run Code Online (Sandbox Code Playgroud)

错误:

在if(df $ X <5){:条件长度> 1且仅使用第一个元素

我也试着做更像这样的事情.

for(i in dfX){
if(df$X<5){
df$A <- "NA"
 }
}
Run Code Online (Sandbox Code Playgroud)

Mar*_*ann 6

如果需要声明则不.这就是矢量化的魔力.

df$A[df$Z < 5] <- NA
Run Code Online (Sandbox Code Playgroud)