目次
この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
Googleデータポータルには計算フィールドというカスタマイズ機能があります。Googleアナリティクス上では編集できない、置換・統合といったデータ表現も可能です。計算フィールド内で使えるCASE関数について実例を踏まえてご紹介いたします。
この記事でまとめられていること
こんにちは。株式会社アピリッツでアナリストをしているssekiです。
以前、「情報共有ならデータポータルがおすすめ!マイレポートと比較してみた」という記事内で、GoogleアナリティクスのマイレポートよりGoogleデータポータルが使いやすいというお話をしましたね。
その後、データポータルを使って新卒一同の記事投稿状況を監視(もとい管理)していると、ふと小さな不満がわいてきました。
「ユーザー名が新卒の名前と一致しないから、わかりにくい・・・!!」
そうです。例えば、私のユーザー名「sseki」をURLから抽出して、ssekiが書いた記事の合計ページビュー数をアナリティクスやデータポータルで見るとこうなります。
私自身は/sseki/でも誰だかわかりますが、新卒全員分を監視するにはちょっと複雑ですよね。できれば実名で管理したい。
実は、そんな時にもデータポータルが役立つんです。
今回は、Googleアナリティクスデータを一部置換したレポートが作成できるデータポータルの機能について、使い方を交えてまとめてみました。
Googleデータポータルの計算フィールドとは
以前紹介し損ねましたが、GoogleデータポータルにはGoogleアナリティクスのマイレポートとは大きく異なる機能が搭載されています。それが計算フィールドです。
計算フィールドとは、データを元に新しいディメンションや指標をカスタマイズする機能です。
感覚的には、エクセルの関数やマクロに近いものになります。
2017年6月現在、データポータルには54個の関数が用意されています。
これらの関数を使って、アナリティクスデータをもとに全く新しいディメンションや指標を作成できるのです。
マスターしたら、わざわざエクセルにエクスポートしなくてもレポート作成ができてしまうかもしれませんね!
計算フィールドの使い方
まず、ディメンションや指標の切り替え画面から「新しいディメンション/指標を作成」を押します。
すると、画像下側から現在設定されているディメンションと指標の表がせせり出てきます。
フィールドと書かれている右の「+」ボタンをクリックすると、計算フィールドが出現します。
カスタムフィールドに名前を付け、数式欄に関数やデータを組み合わせた数式を入力した後、「項目を作成」ボタンをクリックすると新しいディメンションや指標を作成できます。
CASE関数で条件付け置換が可能
データポータルの関数リストの中でも、私がイチオシしたいのがCASE関数です。
やや複雑ですが、エクセルのIF文のように条件付けを行ってデータを置換することができます。
例えば、私「sseki」の名前を「関」に置換する場合には次のようにCASE関数を使った数式が使えます。
CASE WHEN 第 2 階層 = "/sseki/" THEN "関" END
CASE関数はどんな条件のとき(WHEN)に、結果として何を表示するか(THEN)が基本文となっています。
そのため、条件文whenの中に「第 2 階層に”/sseki/”って文字があったら」を入れて、結果文thenの中に「”関”って表示して」と記述することで、条件別に置換することができます。
ちなみに、先頭のCASEと末尾のENDはCASE関数の開始・終了を知らせる文字なのでお忘れなく。
新しいディメンションを作成すると、ディメンション一覧に追加されて選択することで使用できます。
実際にディメンションを選択してみると、/sseki/が関になっているのがわかりますね。
複数条件の場合にはIN関数を使おう
前述した例の中では、条件文whenで「=」を使った単条件一致パターンを紹介しました。
実際には、複数条件に一致する場合の方がよく使うのかなと思います。
例えば、私が「sseki」と「mofumofu」という複数のアカウントを持っていたとします。
その両方のアカウントを「関」に統合したい場合、次の数式が使えます。
CASE WHEN 第 2 階層 IN ("/sseki/","/mofumofu/") THEN "関" END
IN関数は、カッコ内でカンマ区切りされた文字列に合致するデータを対象のディメンションや指標の中から探し出して出力する関数です。
もちろんOR条件のような論理演算子を使うこともできますが、たくさんの複数条件を記述する場合はIN関数のほうがお手軽です。
まとめ:CASE関数はどんなときにおすすめか
CASE関数はデータを一部置換したり、統合したいときに使える関数でした。
Googleアナリティクス上で置換する場合にはタグ改修などが必要となり面倒ですが、データポータル上で編集する分には数式を書くだけなのでお手軽です。
今回は、名前を変更したり統合することを例に出しましたが、その他にも例えば次のようなことが考えられるかなと思います。
1. アナリティクスデータの市区町村を漢字名に直す/都道府県や地方単位に統合する
2. 年齢層を若年層・中年層・高齢層に再区分する
3. アフィニティカテゴリを日本語訳する/大きなカテゴリに統合して管理する
ところで、ご紹介したCASE関数を含めた計算フィールドでの計算が元データを改変することはありません。
あくまでも元データをもとに計算するだけなので、アナリティクス上のデータが変わることはないということに注意しましょう。
逆に、「アナリティクスをいじって元データを変更したくないという人」や、「毎回エクスポートしてエクセルで作業している」という人にはおすすめの機能なので、ぜひ一度お使いになってみてはいかがでしょうか。