はじめに
Rを使って顧客来店データを分析する方法を記録したいと思います。
データについては、あるサービス業の来店データとなります。
今回は年代を軸に性別ごとの来店数をヒストグラムで分析しようと思います。
対象データ
service.csv
cancel,weekday,hour,attention,sex,age
0,2,18,0,2,10
0,5,12,0,1,10
0,4,17,0,2,10
0,0,10,0,1,10
0,4,17,0,2,10
1,0,17,0,1,10
-------
左から→キャンセルフラグ,曜日,時間,注意フラグ,性別,年代
となります。
(注意フラグは、一定のキャンセル数以上の場合に1が入ります)
こんな感じのcsvデータを利用します。
結果グラフ
縦軸:件数
横軸:年代
となっています。
また、
sex-1は男性で赤色
sex-2は女性で青色
となります。
コード
# ggplotのインストール
install.packages("ggplot2")
# ggplotのロード
library(ggplot2)
# csvの読み込み(先頭行をヘッダに)
df <- read.csv("service.csv", header = TRUE)
# 型情報の確認
sapply(df, class)
# データの先頭部分の出力
head(df)
# データの概要の確認
summary(df)
# データを加工(それぞれ文字列型と数値型に変換)
df <- data.frame(
attention = as.character(df$attention),
hour = as.numeric(df$hour),
weekday = as.numeric(df$weekday),
sex = as.character(df$sex),
age = as.numeric(df$age),
cancel = as.character(df$cancel)
)
# グラフの生成(ヒストグラムを作成。年代をxにして、sexを塗り分ける)
ggplot(df, aes(x = age, fill = sex)) +
geom_histogram() +
theme_bw(16) +
ylab("count") +
scale_x_continuous(breaks=c(10, 20, 30, 40, 50, 60, 70, 80, 90))
※最後のscale_x_continuousでは、x軸の刻みを設定しています
まとめ
今回はヒストグラムを使った業務データの分析をしてみました。
今後も同データをいろいろいじってみたいと思います。