SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

MarkeZine Day(マーケジンデイ)は、マーケティング専門メディア「MarkeZine」が主催するイベントです。 「マーケティングの今を網羅する」をコンセプトに、拡張・複雑化している広告・マーケティング領域の最新情報を効率的にキャッチできる場所として企画・運営しています。

直近開催のイベントはこちら!

MarkeZine Day 2025 Retail

実践!WebマーケターのためのR入門

時系列データと箱ひげ図を利用して、ちゃちゃっとデータを分解し変動要因を特定しよう!【R入門講座】


箱ひげ図を使ってちゃちゃっとデータを分解

 ありますよー。今回は箱ひげ図を取り上げます。箱ひげ図って全然カッコよいネーミングじゃないですね。英語だとboxplot(ボックスプロット)といいます。雰囲気的にこっちで呼びましょう。

boxplot(sample3$純広告,main="純広告")

 ボックスプロットを確認すると、データが存在している範囲が一目でわかります。第1四分位とか中央値とかは…前回やりましたね?(参考)。

 ちなみに「箱の長さ×1.5+第3四分位」、「箱の長さ×1.5-第1四分位」を「ヒゲ」と呼びます。箱ひげ図の「ヒゲ」ですね(参考)。

 という訳で、先ほど苦労して作成した曜日データを活用してボックスプロットを作成してみましょう。

par(mfrow=c(2,2))

boxplot(sample3$純広告~sample3$youbi,main="純広告")

boxplot(sample3$リスティング~sample3$youbi,main="リスティング")

boxplot(sample3$CV_純広告~sample3$youbi,main="CV_純広告")

boxplot(sample3$CV_リスティング~sample3$youbi,main="CV_リスティング")

 純広告のインプレッションとCVの中央値から見ていきましょう。

 土曜日、日曜日は平日と比較して明らかに低いことが示されています。つまりこれは、第1回の折れ線グラフで書いていた時の底にあたる曜日であると考えられます。

 また、上のヒゲと下のヒゲの幅はインプレッションでは火曜日が大きく、CVでは月曜日が大きいですね。

 一方、リスティングはクリックの中央値はやや土曜日、日曜日は低い傾向にありますが、CVはそこまで差はないようです。

 ちなみに昭和的なグラフをカラフルにするにはborder=やcol=の後で色を指定することでできます!

par(mfrow=c(2,2))

boxplot(sample3$純広告~sample3$youbi,main="純広告", border = "red",col=" magenta ")

boxplot(sample3$リスティング~sample3$youbi,main="リスティング",border=" darkgreen ",col= "lightyellow")

boxplot(sample3$CV_純広告~sample3$youbi,main="CV_純広告",border="blue",col=" pink ")

boxplot(sample3$CV_リスティング~sample3$youbi,main="CV_リスティング",border=" lightgreen",col="green")

 さてさて、ここまでで曜日別のボックスプロットを確認することができました! さて、いよいよ最初にお話したデータの分解を行ってみましょう。

 まずは、Rに対してデータの周期を認識してもらう必要があります。今回は日次データで週の周期性があるものですね。

ts_sample<-ts(sample3,frequency=7)

 tsという関数の中でfrequency:周期性が7日であると設定します。

 純広告のインプレッションについて分解を行いたいとすると、純広告はts_sampleの中で2列目ですので

decomp_純広告<-decompose(ts_sample[,2])

 のように設定します(これまでも使っていたts_sample$純広告という指定方法はts関数を使った後はエラーになってしまうのでご注意下さい!)。

 このdecompose関数を使うと、データを移動平均という手法を使って

  1. 一時的なノイズ
  2. 周期的な動き
  3. トレンド

 に分解できます!

 plot(decomp_純広告)

 あまりにもアッサリできてしまいました。。。グラフの見方ですがobservedは元のデータ、つまりここでは純広告のインプレッションですね。

 trendはトレンド、seasonalは周期的な動き、randomは一時的なノイズを表現しています。

 つまりobserved=trend+seasonal+random となっているのです。

 ボックスプロットで確認した曜日の周期的な動きについてはseasonalで表現されています。ちなみに、これらの結果を使用したい場合には下記のように設定することで活用できます!

trend<-decomp_純広告$trend

seasonal<-decomp_純広告$seasonal

random<-decomp_純広告$random

result<-cbind(trend,seasonal,random)

 ここでは、resultにデータを纏めています。

 このdecomposeの結果にあるトレンドを見ることで、周期的/一時的なノイズ以外でどのような動きになっているかをカンタンに確認することができます。マーケティング分野においても使い勝手がよいのではないでしょうか?

 今回は、少し突っ込んだデータの加工と時系列分析の一部をご紹介いたしました! 次回もご期待下さいませ!

簡単! 2015年2月10日「3つ」覚えて分析から視覚化まで即実践!Rでできるデータ分析講座開催

Rをインストールしたが、無骨なUIに「今日はこのへんで……」と、そっと閉じてしまった方にオススメです!

本講座では実機を使って「できるだけわかりやすく」グラフ化&データ分析をワークショップ形式で簡単に身に付けることができます。

★☆★「Rでできるデータ分析講座」の詳細・お申し込みはこちら★☆★

 

時系列分析でトレンドも分かる

楽しいR

Amazon /  翔泳社
楽しいR
ビジネスに役立つデータの扱い方・読み解き方を知りたい人のためのR統計分析入門

著者:豊澤栄治
出版社:翔泳社
発売日:2015年2月9日
定価:2,200円(税別)

目次

  • 第1章 とっつきにくいけど実はExcel以上に賢いヤツ
  • 第2章 Rで分析を始める前に
  • 第3章 時系列データを分析すると何がわかる?
  • 第4章 Rのパッケージを使って
  • 第5章 正しい分析手法を選ばないと時間のムダ
  • 第6章 「ダミー変数」でデータをまとめてクラスター分析
  • 第7章 どれだけ○○したら◎◎できるのか?
  • 第8章 総まとめ!

 

この記事は参考になりましたか?

  • Facebook
  • X
  • note
関連リンク
実践!WebマーケターのためのR入門連載記事一覧

もっと読む

この記事の著者

豊澤 栄治(トヨサワ エイジ)

株式会社ファンコミュニケーションズ サービス開発部 情報科学技術研究所 所長

横浜国立大学経営学部、一橋大学大学院国際企業戦略研究科卒

SPSS Japan、みずほ第一フィナンシャルテクノロジー(株)、外資系運用会社(Amundi Japan)での経験を活かし、金融の分析ノウハウをマーケティ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

MarkeZine(マーケジン)
2015/04/21 12:02 https://markezine.jp/article/detail/20427

Special Contents

PR

Job Board

PR

おすすめ

イベント

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング