GoogleAnalyticsにイベント仕込んでデータをAPI取得、Pandasを利用し広告価値評価を行う

やりたいこと

すごいニッチな内容。Webサイトに置いてECであれば、GoogleAnalyticsで[ページの価値]を[eコマース]設定で把握している会社も多いのではないかと思う。Criteoの自動最適化に使われているROASの概念もこれに通ずる。ただ、世の中にはECサイト型で収益をあげるものの他に、メディアとして情報を自サイトに掲載することで収益をあげるものもある。仮にこういった手法を掲載課金型モデルとして、メディア側はこの掲載課金の中にある、広告メニューの価値をどう推し量るべきか?

今回は、GoogleAnalyticsのPVをベースに、PVと広告メニュー売上を比較。どの広告メニューのPVが価値が高いのかを可視化したい。

最終的にできあがるもの

Jupyter Notebookのhtmlを最初に見た方が全体像がわかりやすいです。またGitHubにJupyter NotebookとCSVを公開しています。

全体の流れ

  1. GoogleTagManagerで広告メニュートラッキングを行う
  2. GoogleAnalytics APIにおいて対象データの取得
  3. 対象データの整形
  4. PVと広告メニュー売上を比較
  5. グラフ化

※社内のSQLを利用しない理由:会社にもよるが、メディア運営しているなら、各広告メニューによるPV推移はとってるだろうし、SQLで見れる。ただ、自社DBのSQL接続権限を持ってないというマーケターも多いように思う。そこでGoogleAnalyticsのAPIを使うことで、マーケターにとってデータ把握が容易になる。また、自社のPVカウントってボットを多量に含んでいるのであまり信頼の置けない数値だったりする。・・・と個人的に思っている。

必要なもの

  • Jupyter Notebook
  • matplotlib
  • google2pandas ※これはマジでいい
  • pandas
  • GoogleAnalyticsアカウント
  • GoogleTagManagerアカウント
  • GoogleCloudPlatformのちょっとした知識

1. GoogleTagManagerで広告メニュートラッキングを行う

仮にWebサイトが下記のようなディレクトリ構造になっている場合、課金対象になっているのは色の付いているところ。いわゆる詳細ページ。色合いがそれぞれの広告メニューで金額が違う。まずやりたいことは、この各広告メニューにおいてのPVの総和をカウント。

この総PVというものが、広告メニュー毎にGoogleAnalyticsで計測できていなければいけない。GoogleTagManagerにおいて、[変数]に格納して[GAイベント]としてGoogleAnalyticsに送信する方法を考えていく。

続きを読む

FoliumでE-statの人口増地域をヒートマップ表示

やりたいこと

日頃、GoogleAnalyticsや会社独自のデータを取り扱う機会が多い。そうした情報を地図上にプロット。営業・広告戦略立案に役立てたい。ということで冒頭に乗ってる地図情報がサンプル。ヒートマップにて表示されていて「なんか凄いんじゃないか?」感がでていて非常によい。できれば、こういうもので会社の偉い人らを立て続けに殴打したい。

用意するもの

Jupyter notebook
Folium
pandas
json
requests
matplotlib
EstatのAPIアカウント
https://www.e-stat.go.jp/api/apiuser/provisional/

ライブラリ系は全てpipしておけばよいです。

Githubにて

https://github.com/kerion546/folium_estat
今回のコードはここからダウンロードできます。

考えながら作っていく

1. E-statからのデータ取得

会社データ使うわけにはいかないので、オープンデータ探していたら、あるらしい。Estatというらしい。

「政府統計の総合窓口(e-Stat)」は、各府省が公表する統計データを一つにまとめ、統計データの検索をはじめとした、さまざまな機能を備えた政府統計のポータルサイトです。各府省が公表している統計表をExcel・CSV・PDF形式でダウンロードすることが可能です。

とのことなので、ここを使うことにした。APIではアカウント登録をすることで、JSONやXMLでGETすることができて簡単に情報が収集できる。今回は練習を兼ねてJSONでの取得を行った。

続きを読む
1 3 4 5