第4章 Rベースで抽出・集計 ・ ノック 53 / 100 ・ [[000 - はじめに(使い方と目次)|目次]]<br>
← 前 [[052 - グループ別に集計する]] ・ 次 → [[054 - 各列に関数を適用する]]
> [!info] `apply()` で行または列に関数を適用する
> `apply()` は行列やデータフレームに対して「行ごと」または「列ごと」に関数を適用する関数です。使い方は `apply(データ, 行か列か, 関数)` で、第2引数が `1` なら「行方向(各行に対して)」、`2` なら「列方向(各列に対して)」を意味します。数値の列のみを対象にする必要があるため、`iris[, 1:4]` で数値4列を選んでから渡します。
## 問題
`iris` の数値4列(1〜4列目)について、`apply()` を使って列ごとの平均を求めてください。
> [!tip] ヒント
> `apply(iris[, 1:4], 2, mean)` と書きます。`2` が「列ごと」の指定です。
> [!success]- 回答を見る
> ```r
> apply(iris[, 1:4], 2, mean)
> ```
> ```
> Sepal.Length Sepal.Width Petal.Length Petal.Width
> 5.843333 3.057333 3.758000 1.199333
> ```
> 4列それぞれの平均が一度に計算されました。第2引数を `1` に変えると、各行(各サンプル)の平均を求めることもできます。