第4章 Rベースで抽出・集計 ・ ノック 51 / 100 ・ [[000 - はじめに(使い方と目次)|目次]]<br> ← 前 [[050 - 種類ごとの個数を数える]] ・ 次 → [[052 - グループ別に集計する]] > [!info] `tapply()` でグループ別に関数を適用する > `tapply()` は「グループ別に関数を適用する」関数です。名前の `t` は table の意味で、テーブル(表)形式で結果を返します。使い方は `tapply(計算したい数値列, グループを表す列, 使いたい関数)` の順番です。たとえば「種類ごとの Sepal.Length の平均」を求めるには `tapply(iris$Sepal.Length, iris$Species, mean)` と書きます。 ## 問題 Species(種類)ごとに `Sepal.Length` の平均を `tapply()` で求めてください。 > [!tip] ヒント > 第1引数に数値列、第2引数にグループ列、第3引数に `mean` を渡します。`mean` はカッコ不要で関数名だけ書きます。 > [!success]- 回答を見る > ```r > tapply(iris$Sepal.Length, iris$Species, mean) > ``` > ``` > setosa versicolor virginica > 5.006 5.936 6.588 > ``` > virginica のがく片がもっとも長く、setosa がもっとも短いことがわかります。`mean` の部分を `sd` や `max` に変えれば標準偏差や最大値も同じ書き方で求められます。