3

この非常に単純なコードを実行すると

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)
    }
}

コンソールに次のエラーがあります

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

最も興味深い部分は、「if」条件で論理変数を作成しようとすると、すべて正常に機能することです。

> (l>1 & x>c[l-1] & x<c [l])
logical(0)

私は何を間違っていますか?

4

1 に答える 1

7

それはばかげた間違いでした。これによれば、に置き換える&&&私の場合の問題が解決します。

于 2013-11-12T17:10:39.987 に答える