Rのtapply関数を使って、複数の度数分布表・ヒストグラムをまとめて出力する
tapplyを使えば、データフレームのカテゴリの列でグループ分けしつつ、値の列に対して関数を適用するということができます。 ・・・と言っても分かりにくいと思いますので、具体的なサンプルをあげてみますと、 > # サンプルデータを作る > 名前 <- c("A", "B", "C", "D", "E", "F") > 性別 <- c("男", "男", "女", "男", "女", "女" ) > 身長 <- c(175, 165, 165, 170, 160, 155 ) > df <- data.frame(名前, 性別, 身長) > df 名前 性別 身長 1 A 男 175 2 B 男 165 3 C 女 165 4 D 男 170 5 E 女 160 6 F 女 155 > > # ここから本題 > tapply(df$身長, df$性別, mean) 女 男 160 170 性別でグループ分けして、身長の平均を算出する(mean関数を適用)という感じです。 第3引数にhist関数を指定してやれば、グループ分けを適用したあとに、複数の度数分布表を算出したり、複数の度数分布図(ヒストグラム)を書いたりすることもできます。 もう少し大きいサンプルデータを使いましょう。↓この本に載っていたサンプルを使わせていただきます。 ↓こちらからダウンロードできる、"年収.csv"を使います。 データマイニング入門-Rで学ぶ最新データ解析 - 東京図書 ↓こんな感じのサンプルデータです。 > d <- rea...