第5章 tidyverse(dplyr)で再現 ・ ノック 71 / 100 ・ [[000 - はじめに(使い方と目次)|目次]]<br> ← 前 [[070 - ネイティブパイプを使う]] ・ 次 → [[072 - 重複を除く]] > [!info] count() はグループごとの行数を数える動詞です > **`count()`**(カウント)は、指定した列の値ごとに行数を数えてデータフレームとして返す動詞です。`count(iris, Species)` と書くと、Species の値ごとに何行あるかを集計した表が返ります。結果の列名は自動的に `n` になります。 > > Rベースでは `table(iris$Species)` で同様の集計ができましたが、`count()` の結果はデータフレームなので後続のパイプ処理につなげやすいという利点があります。`group_by() %>% summarise(n = n())` と書いても同じ結果が得られますが、`count()` の方が短く書けます。 ## 問題 `iris` の Species ごとの行数を `count()` で数えてみましょう。 > [!tip] ヒント > `count(データフレーム, 集計したい列名)` の形で書きます。 > [!success]- 回答を見る > ```r > library(dplyr) > count(iris, Species) > ``` > ``` > Species n > 1 setosa 50 > 2 versicolor 50 > 3 virginica 50 > ``` > Rベースでは `table(iris$Species)` と書いていましたが、`count()` を使うと結果がデータフレームとして返るので、そのままパイプでつないで次の処理に使えます。