Rでは、`T` や `F` は「ブーリアン(論理値)」という特別な型のデータです。これは[[文字列]]や数値とは異なります(`TRUE` や `FALSE` と書くこともできます)。 ## 基本的な比較演算 次のような単純な比較を[[R のコンソール]]で試してみましょう ```R > 3 < 1 [1] FALSE > 2==3 [1] FALSE > 2==2 [1] TRUE ``` これらの例では: - `3 < 1` は「3は1より小さいか?」という質問で、結果は `FALSE` になります - `2==3` は「2と3は等しいか?」という質問で、結果は `FALSE` になります - `2==2` は「2と2は等しいか?」という質問で、結果は `TRUE` になります 以下のコードを**そのままRStudioにコピペして実行**してみましょう。 ```R # サンプルデータを作成 df <- data.frame( id = c("A", "B", "C", "D"), score = c(90, 55, 72, 68) ) # 作成したデータを表示 df # 点数(score)が70点以上かどうかを判定し、結果をブーリアンで追加 df$pass <- df$score >= 70 # 判定後のデータを表示 df # TRUE(合格者)の人数を数える sum(df$pass) ``` ## 結果の見方 新しく作成された `pass` という列には、点数が70点以上の場合は `TRUE` (T)、そうでない場合は `FALSE` (F) が入ります。 最後の `sum(df$pass)` は、TRUE(条件を満たすデータ)の個数を数えます。これは内部的に TRUE が数値の 1、FALSE が 0 として扱われるためです。 実際にそのように扱われているか、[[R のコンソール]] で確認してみましょう。 ```R > 1 == TRUE [1] TRUE > 0 == FALSE [1] TRUE > 0 == TRUE [1] FALSE ```