R if else声明问题

dar*_*iaa 3 if-statement r

当我运行这个非常简单的代码时

c <- seq(0, 1, length.out=4)
x <- 0.5
for (l in 1:length(c)) {
    if (l>1 & x>c[l-1] & x<c[l]) {
        print(x)
    }
}
Run Code Online (Sandbox Code Playgroud)

我在控制台中有以下错误

Error in if ((l > 1 & x > c[l - 1] & x < c[l])) { : 
  argument is of length zero
Run Code Online (Sandbox Code Playgroud)

最有趣的部分是,如果尝试使用"if"条件创建逻辑变量,一切正常:

> (l>1 & x>c[l-1] & x<c [l])
logical(0)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

dar*_*iaa 7

那是一个愚蠢的错误.根据这个替换&,&&将解决我的情况的问题.