中級 › which() の戻り値と論理ベクトルによる添字指定を混同するとずれる › パターン1
which() の戻り値と論理ベクトルによる添字指定を混同するとずれる
which(条件)は条件を満たす要素の「位置(添字番号)」を返しますが、条件そのもの(論理ベクトル)を直接添字として使うのとは意味が違います。
1 scores <- c(45, NA, 91, 33, 76) 2 passed <- scores[___________________] ^ 3 cat(passed, "\n")
出力: NA 91 76
空欄を埋めて実行を通す
論理ベクトルで直接添字指定すると、NAだった位置もNAのまま結果に残ります。which()を使うとNAの位置は結果から除外されます。
次の問題