SHOEISHA iD

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

新着記事一覧を見る

おすすめのイベント

おすすめの講座

おすすめのウェビナー

マーケティングは“経営ごと” に。業界キーパーソンへの独自取材、注目テーマやトレンドを解説する特集など、オリジナルの最新マーケティング情報を毎月お届け。

『MarkeZine』(雑誌)

第107号(2024年11月号)
特集「進むAI活用、その影響とは?」

MarkeZineプレミアム for チーム/チーム プラス 加入の方は、誌面がウェブでも読めます

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

最終回/ダミー変数を使って上手にデータをまとめ、グループごとの特徴を把握しよう【R入門講座】


 最終回では、大量にあるデータをグループ化してまとめて把握するコツを紹介していきます。さらに少し欲張って単位が違うデータを同じ土俵にのせて分析する際の必須処理である、「基準化/標準化」についても触れていきます。

いよいよ最終回!上手にデータをまとめてみよう

 本連載もいよいよ今回で最終回となりました。無骨なコンソール画面……。そろそろ慣れていただけけましたでしょうか?

 さてさて、大量にあるデータをまとめて俯瞰したいと思ったことはありませんか? 例えば、似ている人や似ている広告をまとめてグループを作りたい! みたいな。

 上手にデータをまとめることができれば、それぞれのグループの特徴を簡単に把握することができます。今回、ご紹介する分析は下記イメージとなります。つまり行方向で集約するものです。

 ちなみに、大量にある変数を列方向で集約する手法もあります(因子分析、主成分分析などなど)。

 但し! 上記のままのデータの持ち方では分析手法が適用できないため、今回は「ダミー変数」という、とっても役立つデータについても解説していきます。男性/女性といったそのままでは扱いの難しい名義変数/カテゴリカルデータ(前回記事)も分析の対象にできる優れものです。

 名前は胡散臭い感がありますが、使い勝手の良いイケテルヤツです。

 しかも!

 Rは「パッケージ」を活用することで、この「ダミー変数」をサックリ作成できます。これ本当に便利です。是非、皆さんと共有していきたいと思います。

 さらに今回は少し欲張って単位が違っていたり、平均が異なっているデータを扱う時に必須の処理「基準化/標準化」についても触れていきます。

ダミー変数って何やねん……?

 さて、まずは今回のサンプルデータですが前回と同様コチラを使います。

 Rの中でこれらのデータがどう扱われているのかまず確認してみましょう。例のごとくRにデータを読み込みます。

sample1<-read.csv("c:/data/CV_data.csv")

 R上で各変数がどのように扱われているかを確認します。

str(sample1)

 順に見ていきましょう。ID、CV、AGE、SEX、ADという変数名が並んでいますね。問題は次です。int? Factor?……

 intは前回の量的変数であることを示しています。Factorは質的変数/カテゴリカルデータです。後ろのw/ 2 の数値は下記の通りとなっています。

  • yes、no →2 levels
  • Male、Female →2 levels
  • Mail、Listing、DSP →3 levels

 ※この場合のlevelsは「水準」なんて言ったりします。

 つまり含まれる質的変数の種類(=水準数)を表していますね。

 さてさて、R上でそれぞれの変数がどう認識されているかが確認できました。が! このままのデータの持ち方では今回の分析手法を適用できないのです。でも、こんな格好のデータを、、、

 こんな風にできると質的変数も量的変数として扱うことができるようになります(ドヤッ

 これら0,1のデータをダミー変数と呼びます。データ分析におけるお作法みたいなものなので、覚えていると役立ちますよ!

 でも扱う変数の数が巨大になってくると、水準数ごとにダミー変数を作成するのもなかなか大変な作業になっちゃいます。

 そこで! ここで役に立つパッケージがこちらです。

  • caret
  • ggplot2

 このパッケージは予測モデルを構築する際に役立つモデルやデータを簡単に選択できる機能が含まれています。また、前回までにご紹介したggplot2も合わせて読み込みます。

 早速、第4回でご紹介したように同パッケージをインストールしましょう。

 これで使用可能になります。

library(caret)
library(ggplot2)

 以下の2行のおまじないで、あっという間に質的変数/カテゴリカルデータをダミー変数に加工できます!

tmp <- dummyVars(~., data=sample1)
sample1.dummy <- as.data.frame(predict(tmp, sample1))

補足

  • 1行目dummyVarsの"~." ……このニョロニョロの後ろの "."(ピリオド) は、全ての質的変数を対象とすることを意味します。
  • data=sample1……対象とするデータはsample1ですよ!の意味です。
  • 2行目は1行目で作成したtmpを使って、sample1の質的変数をダミー変数に変換して、sample1.dummyに格納します。

 意図通り加工できているか確認しましょう。

head(sample1.dummy)

 見事に先ほどstr(sample1) でFactor(=質的変数)と確認した変数が[0,1]のダミー変数に変換されていますね!

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

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

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

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

会員登録無料すると、続きをお読みいただけます

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

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

メールバックナンバー

次のページ
単位が異なる変数を扱える技、それが基準化/標準化

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

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

もっと読む

この記事の著者

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

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

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

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

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

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

この記事をシェア

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

Special Contents

PR

Job Board

PR

おすすめ

イベント

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

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

メールバックナンバー

アクセスランキング

アクセスランキング