Looker Studioとデータソースを紐づけるだけでも十分価値のあるデータビジュアライゼーションを実現できるが、計算フィールドを使えるようになるとさらにデータ分析の幅を広げられる。
今回は、計算フィールドとはそもそもどのようなもので何ができるのか、また、使用頻度の高い関数までわかりやすく解説する。
計算フィールドとは
Looker Studioの計算フィールドとは、既存のディメンションまたは指標を用いて、独自のルールで処理した新たなディメンション・指標を作成できる機能のことをいう。
既存で用意されたものだけでは表現できないデータを可視化し、より深い分析につなげたり、表示方法を変更したりデータをまとめたりなどして見やすく便利なダッシュボードを作成するためには欠かせない機能となっている。
計算フィールドでできること
Looker Studioの計算フィールドで実現できることをまとめると、以下の3つになる。
基本的な四則演算を行う
四則演算では、+、-、*、/といったExcelでも使う演算子を用いて、シンプルな計算を行う。
例)
計算フィールドについて
ユーザー / 新規ユーザー
(SUM(価格) * SUM(数量)) * 0.085
関数を用いてデータを加工する
関数はデータの集計やテキストの操作、日付表示形式の変更などを行うためのもので、Excelの関数のようにsum()、replace()のように使える。
例)
計算フィールドについて
SUM(数量) — 「数量」フィールドの値を合計します。
PERCENTILE(1 日のユーザー数, 50) — 「1 日のユーザー数」フィールドのすべての値のうち、50 パーセンタイルの値を返します。
ROUND(ユーザーあたりの収益, 0) — 「ユーザーあたりの収益」フィールドの値を小数点第 0 位で切り上げます。
SUBSTR(キャンペーン, 1, 5) — 「キャンペーン」フィールドの最初の 5 文字を返します。
REGEXP_EXTRACT(パイプ文字で区切られた値, R’^([a-zA-Z_]*)(\|)’) — パイプ文字で区切られた文字列の最初の値を抽出します。
DATETIME_DIFF(開始日, 終了日) — 開始日から終了日までの日数を計算します。
PARSE_DATETIME(“%d/%m/%Y %H:%M:%S”, DateTimeText) — テキスト フィールドから日付を作成します。
TOCITY(条件 ID, “CRITERIA_ID”) — Google 広告の有効な地域ターゲティング条件 ID に基づき、関連付けられている都市名を表示します。
ただし、カッコ前の文字列はExcelと少しだけ異なるものも多く、例えば、Excelで平均値を集計するときに使用する関数は“average()”だが、Looker Studioでは“avg()”の表記になる。
条件分岐をつくる
CASE文という特殊な関数を使用し、特定の条件に合致したものをグループごとに分岐させることができる。
例えば以下は、アメリカ・カナダ・メキシコを「北アメリカ」、イギリス・フランスを「ヨーロッパ」、その他の国々を「その他」として分けている。
例)
計算フィールドについて
CASE
WHEN 国 IN (“アメリカ”,”カナダ”,”メキシコ”) THEN “北アメリカ”
WHEN 国 IN (“イギリス”,”フランス”) THEN “ヨーロッパ”
ELSE “その他”
END
このように、特定の値をグルーピングしてその戻り値として別の値を付与する場合はCASE文を使う。
計算フィールドには2つの種類がある
計算フィールドは、「データソースの計算フィールド」と「グラフ固有の計算フィールド」の2種類に分類される。
それぞれに特徴があり、できることとできないことが異なるため、違いについて表にまとめる。また、計算フィールドを設定する箇所もそれぞれ違うため、次章で詳しく解説する。
データソースの計算フィールド | グラフ固有の計算フィールド | |
---|---|---|
作成できるユーザー | データソースレベルの編集者 | レポートレベルの編集者 |
使える範囲 | 同じデータソースを使用するすべてのレポート | そのグラフのみ |
他の計算フィールドやフィルタへの使用 | 〇 | ✖ |
データ統合した後の作成可否 | ✖ | 〇 |
計算フィールドの使い方
前章で述べた、「データソースの計算フィールド」と「グラフ固有の計算フィールド」は設定を始める箇所が少し違う。
「データソースの計算フィールド」は、Looker Studioの画面右データタブの下の方にある「フィールドを追加」か、グラフタブにあるデータソースのアイコンをクリックする。
アイコンをクリックした場合は、下からせりあがるかたちで表示される以下の画面から「フィールドを追加」をクリックし、「計算フィールドを追加」を選択する。
冒頭の操作で「フィールドを追加」をクリックした場合は、そのまま「計算フィールドを追加」を選択してはじめる。
「グラフ固有の計算フィールド」では、ディメンションの計算フィールドを作りたい場合は「⊕ディメンションを追加」を、指標の計算フィールドを作りたい場合は「⊕指標を追加」をクリックする。
すると項目の一覧が表示されるため、下にある「計算フィールドを追加」をクリックしてはじめる。
そのあとの計算フィールドの作り方は画面が少し異なるが、おおむね一緒なので、データソースの計算フィールドの例で説明する。
以下は、GA4のデータソースと連携した場合の、「平均エンゲージメント時間」を新しい指標として作成した場合のものだ。
平均エンゲージメント時間は、1ユーザーあたりのサイト訪問平均時間を表し、以下の計算式で表される。
平均エンゲージメント時間 = ユーザーエンゲージメント ÷ アクティブユーザー数
GA4と連携したLooker Studioには平均エンゲージメント時間の指標が既存で用意されていないため、計算フィールドで作っておくと後々便利である。
保存し、完了ボタンを押したら、データタブに追加されているはずなので、グラフで使用できるようになる。
使用頻度の高い関数一覧
Looker Studioの計算フィールドで使用できる関数は50種類以上あるが、大きく5つに分けられる。
集計関数 | SUM、AVG、MIN、MAXなど、複数行にまたがるデータの計算を行う。 |
算術関数 | LOG、POWER、ROUNDなど、データを用いて数学的な計算を行う。 |
日付関数 | DATE、DATETIME_DIFF、YEARなど、日付や時刻のデータの操作・変換を行う。 |
地域関数 | TOCITY、TOCOUNTRY、TOREGIONなど、地域データの変換を行う。 |
テキスト関数 | CONCAT、REGEXP_MATCH、SUBSTRなど、文字列データの操作・変換を行う。 |
ここでは、使用頻度の高い関数をいくつかピックアップして紹介する。
なおデータソースは、Googleが無料で使えるデモアカウントとして公式に出している「Google Merchandise Store」のGA4データである。
アナリティクスヘルプ – デモアカウント
ランディングページパスにリンクを付与するHYPERLINK関数とCONCAT関数の組み合わせ技
HYPERLINK関数は文字列にリンクを設置できる関数で、CONCAT関数は文字列を連結するための関数である。
今回は、下の画像のランディングページパスをクリックすると、該当のページにリンクで飛べるようにしたい。
計算フィールドを開き、新しいフィールドの名前と以下の数式を入力する。
※青文字は、サイトのドメインによって変更する
HYPERLINK(CONCAT(“https://shop.merch.google“, ランディング ページ + クエリ文字列), ランディング ページ + クエリ文字列)
以下が実際の設定画面である。
先ほどの表のディメンションを、上記で作成したフィールド名に変更すれば、ランディングページパスに下線が引かれ、該当ページへリンクされるはずである。
リンクの付与は、URLが完全なURLの場合であれば関数を使わずともリンクを設置することができるのだが、今回のように付与先がページパスであったり、URL以外のテキストだったりするとHYPERLINK関数が必要になるため、ぜひ覚えておこう。
エリアをグルーピングしてまとめて表示するCASE文
グラフの系列数がどうしても多くなってしまうディメンションを使う場合や、複数の系列をまとめて見たほうが現実に即している場合においては、CASE文が効果的だ。
以下は、サービス拠点ごとにグループ分けした例である。
case
when 地域 in (“Tokyo”, “Saitama”, “Kanagawa”, “Chiba”) then “関東支店”
when 地域 in (“Osaka”, “Kyoto”, “Hyogo”) then “関西支店”
else “その他”
end
曜日を日本語かつ正しい形式にするためのWEEKDAY関数とCASE文の組み合わせ技
GA4と連携したLooker Studioでは、曜日を表すディメンションが「曜日」と「曜日の名前」の2つあり、そのうち「曜日」のほうは日本語表記なのだが、日曜日だけが“7”の数字が返されており、おまけに実際の曜日とズレが発生している。
以下は、「日付」、「曜日」、「曜日の名前」のディメンションを並べているが、「曜日」と「曜日の名前」がズレていることがわかるだろう。また実際には、「曜日の名前」のほうが正しい曜日になるのだが、こちらはこちらで英語かつ正称なので、パッと見わかりづらく冗長である。
そこで、日本語かつ正しい曜日をシンプルな文字で表すために、以下の関数をつくろう。
case
when WEEKDAY(日付) =0 then ‘日’
when WEEKDAY(日付)=1 then ‘月’
when WEEKDAY(日付)=2 then ‘火’
when WEEKDAY(日付)=3 then ‘水’
when WEEKDAY(日付)=4 then ‘木’
when WEEKDAY(日付)=5 then ‘金’
when WEEKDAY(日付)=6 then ‘土’
end
WEEKDAY関数は指定された日付の曜日を示す数値を返す関数で、日曜日の“0”から土曜日の“6”までの通し番号を返す。それをCASE文で本来の曜日に変換してやれば、正しい曜日になるし、上記のように曜日を1文字で簡潔に示すことができる。
サイトへの流入チャネルをグルーピングするためのREGEXP_MATCH関数とCASE文の組み合わせ技
REGEXP_MATCH関数は、指定した正規表現パターンに完全一致する場合に“true”を返し、それ以外の場合は“false”を返すもので、単体で使うよりかはCASE文など他の関数と組み合わせて使う場合が多い。
今回は、GA4で用意されているデフォルトチャネルグループ18種類のうち、下記のようにオーガニック・広告・その他の3つに分類をしてみる。
オーガニック
- オーガニック検索
- オーガニックショッピング
- オーガニックソーシャル
- オーガニック動画
広告
- オーディオ
- クロスネットワーク
- ディスプレイ
- その他(有料)
- 有料検索
- 有料ショッピング
- 有料ソーシャル
- 有料動画
その他
- アフィリエイト
- ノーリファラー
- メール
- モバイルのプッシュ通知
- 参照
- SMS
文は、以下のようになる。
case
when REGEXP_MATCH(セッションのデフォルト チャネル グループ, “Organic.*”) then “オーガニック”
when REGEXP_MATCH(セッションのデフォルト チャネル グループ, “Paid.*|Display|Audio|Cross-network”) then “広告”
else “その他”
end
不要なURLパラメータをパラメータなしに統合するREGEXP_REPLACE関数
見た目は同じページでも、URLにパラメータが付与されていたりすると、下のように別々に集計されるため、それを1つにまとめたいときがある。
そんなときに便利なのは、REGEXP_REPLACE関数だ。これは、指定した正規表現パターンに一致するすべてのテキストを別の文字列に置換する関数で、計算フィールドで下記のように入力すると、パラメータ付きのURLをパラメータなしのURLに統合することができる。
計算フィールドで以下のような式をつくってみよう。
REGEXP_REPLACE(ページ ロケーション, “\\?.*”, “”)
先ほどの7行目10行目のURL群はパラメータなしの“https://shop.merch.google/checkout”に統合され、下では2行目に来ている。
12行目にあったURLもパラメータなしのURLに統合され、下では13行目に来ている。
使用頻度の高い関数の紹介は以上になるが、以下の公式ヘルプにすべての関数が掲載されているため、大変参考になる。
関連:Looker Studioのヘルプ – 関数リスト
おわりに
本記事では、Looker Studioの計算フィールドの概要やよく使う関数について解説した。
これらが使えるようになると、データ分析の幅が広がり、自分以外の人が見ても直感的に理解できるダッシュボード作成が可能となるため、ぜひ一度試してみてほしい。