こんにちは,shun(@datasciencemore)です!!
前回は,ベクトルについて学びましたね.
その中で,論理値ベクトルを使用することでベクトルの要素を抽出できることを覚えているでしょうか?
今回は,その論理値ベクトルに焦点を当てます.
論理値ベクトルを使いこなすことで色々応用できるようになりますよ!
0.論理値ベクトルの処理ってなに??
![](https://datasciencemore.com/wp-content/uploads/2021/01/km294472737501112216315.png)
論理値ベクトルは,比較演算子によって条件の判定結果として作成されるんだ.
そして,論理値ベクトルに対し,論理演算子を使用して計算をすることで,様々な条件を論理値ベクトルで表現できるんだ.
この論理値ベクトルの作成と計算を総称して論理値ベクトルの処理って呼んでいるよ.
![](https://datasciencemore.com/wp-content/uploads/2021/01/km294472737501112216315.png)
相変わらず言葉だけだとよくわかりませんね笑
それでは,詳細にみていきましょう!
1.論理値ベクトルの作成
まず論理値ベクトルを作成していきます.
前回,ベクトルの要素を抽出するところでは,手動で論理値ベクトルを作成し,それのTRUE部分を抽出するという処理について学びました.
しかし,実務では手動で論理値ベクトルを作成するなどほとんどありません.
それでは,どのように論理値ベクトルを作成するのでしょうか?
正解は
条件を満たしたかどうかでTRUEとFALSEを判定し,その判定結果を論理値ベクトルとする.
です.
この条件というのは,目的に応じて様々な場合が考えられます.
例えば,
- 季節は春か?
- 気温が5℃以上か?
- 年齢が25歳以下か?
などなど...
これらの条件を判定するには,以下の比較演算子という特殊な演算子を使います.
比較演算子は,全部ではなく,よく使用する一例です.
まずはこいつらをマスターしましょう.
1 2 3 4 5 |
# x : 1~10までのベクトルを定義 x = 1:10 # y : 適当に定義 y = c(1, 3, 4, 7, 2) |
1 2 |
# xとyは等しいか x == y |
1 |
[1] TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE |
1 2 |
# xとyは等しくないか x != y |
1 |
[1] FALSE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE |
1 2 |
# xはy以上か? x >= y |
1 |
[1] TRUE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE TRUE |
1 2 |
# xはyより小さいか? x < y |
1 |
[1] FALSE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE |
1 2 |
# xはyに含まれるか? x %in% y |
1 |
[1] TRUE TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALS |
最後の x %in% y は少しわかりづらいかもしれません.
これは,xの各要素はyに含まれているか?という意味であり,xの要素それぞれに対してTRUEとFALSEの判定がなされます.
以下のイメージ図も参考にしてみてくださいね.
2.論理値ベクトルの計算
どういうこと?
![](https://datasciencemore.com/wp-content/uploads/2021/01/km294472737501112216315.png)
論理値ベクトルは,組み合わせたり,反転させたり,TRUEの有無を確認したり,いろいろな計算方法があるんだ!!
論理値ベクトルを組み合わせるというのは,2つの論理値ベクトルに対して,とある計算をすることで,1つの新たな論理値ベクトルを作成することをいうよ!!
![](https://datasciencemore.com/wp-content/uploads/2020/12/2012250840-1024x576.png)
![](https://datasciencemore.com/wp-content/uploads/2020/12/2012250948-1024x576.png)
anyとallは,他と違い返り値が論理値スカラー(要は,1つの論理値)であることに注意してくださいね.
まとめ
今回は論理値ベクトルの処理について以下の2点を学習しました.
- 論理値ベクトルの作成
- 論理値ベクトルの計算
これらを屈指することで様々な条件が表現できるのですね.
ここはめっちゃ重要なところなのでよく復習して理解を深めておいてくださいね.
それでは!!