RTech Blog統計学 

Rでヒストグラムを描画

こんにちは。データ事業2部の友利です。

この記事では簡単なデータを使用してRでヒストグラムを描く方法を紹介します。

グラフを作成するツールとして一般的に馴染みがあるのはExcelですが、Excel2013までのバージョンですとヒストグラムの作成に煩雑さが伴います。
しかしながら、Excelの代わりにRを使うことによってその煩雑さを軽減することが可能です。

Rは無料で使うことができる統計分析ツールですが、統計分析だけでなくデータのグラフ化にも優れたツールです。
Rを使う際にはプログラミングをする必要があるため取っ付きづらい部分はありますが単純なコードの記述でヒストグラムを作成でき、なおかつ1度作成したヒストグラムの修正もお手軽です。
そして、Rの実行環境としてはRStudioが一般的です。

今回の記事をきっかけにRでの可視化にチャレンジしてはいかがでしょうか。

 

使用するデータ

下記データ(sales.csv)を用いてヒストグラムを作成します。

 

Channel FreshMilk Grocery Frozen 
21266996567561 214
270579810 9568 1762
2635388087684 2405

.
.
.

.
.
.

.
.
.
.
.
.

.
.
.

29703120511602713135
13922814317644510
145311548830243 437

 

カラム名 詳細
Channel販売チャネル
1: ホテル/レストラン 2: 個人向け小売
Fresh生鮮食品の年間注文額
Milk乳製品の年間注文額
 Grocery食料雑貨の年間注文額
Frozen 冷凍食品の年間注文額

 

ヒストグラムの作成

今回は一例としてMilkの年間注文額のヒストグラムを作成していきます。

まずは使用データを読み込みます。

df <- read.csv("sales.csv")

データを読み込んだ後は hist関数を使えばヒストグラムを作成することができます。

hist(df$Milk)

hist関数の引数である「df$Milk」は、dfデータうち、カラムMilkのデータを選択するというコマンドです。

このコードを実行することで下記のヒストグラムが出力されます。

これがRで書いた場合のデフォルトのヒストグラムとなります。

ヒストグラムの修正

さて、ヒストグラムは出力できたものの出力されたグラフを見ると下記3つの箇所が気になりますよね。

  ・タイトル名に「$」が含まれているため、わかりづらい

  ・X軸のラベル名に「$」が含まれているため、わかりづらい

  ・Y軸の範囲からはみ出てしまっている

ここからは上記3つの箇所を修正していきます。細かい部分を修正するにはhist関数に引数を加えていくことが必要です。

  ・タイトル名を「Milk_histogram」に変更

   → main=”Milk_histogram”

  ・X軸のラベル名を「Order_amount」に変更

   → xlab=”Order_amount”

  ・Y軸の範囲を「0から400」に変更

   → ylim=c(0,400)

これらのコードをhist関数の引数に追加すると上記3つの細かい修正が完了です。

hist(df$Milk, main="Milk_histogram", xlab="Order_amount", ylim=c(0,400))

このコードを実行することで下記のヒストグラムが出力されます。

ヒストグラムの装飾

ここまで、タイトル名、ラベル名、範囲を修正してきました。

最後の仕上げとしてヒストグラムに色をつけていきます。

設定したい色はこちらのサイトを参考にして、hist関数に引数に col=”設定したい色名” というように加えます。今回は上記サイトより、「aquamarine3」という色を選択しました。

hist(df$Milk, main="Milk_histogram", xlab="Order_amount", ylim=c(0,400), col="aquamarine3")

このコードを実行することで下記のヒストグラムが出力されます。

まとめ

このようにRを使えば細かい修正も含めヒストグラムを、たった一行のプログラムで簡単に作成することができます。

今後ヒストグラム書く場合はRを使ってみてはいかがでしょうか。

このページをシェアする:



DATUM STUDIOは、クライアントの事業成長と経営課題解決を最適な形でサポートする、データ・ビジネスパートナーです。
データ分析の分野でお客様に最適なソリューションをご提供します。まずはご相談ください。