Looker Studio(旧 Googleデータポータル)では、「計算フィールド」を用いることで、新たなデータの指標やディメンション(データのカテゴリ)を作成できます。さまざまな関数を利用できるので、自社に必要な指標をカスタマイズでき、目的に合致する分析レポートづくりが可能となります。本記事では、計算フィールドの有用性や具体的な関数を用いた利用方法、利用できる関数一覧、注意したいポイントなどを説明します。計算フィールドにおける関数を使いこなして、レポート作業やマーケティング活動に活用ください。
2022年10月、GoogleデータポータルはLooker Studio(ルッカースタジオ)に名称変更しました。当ブログ内で随時新素材へ変更中でございますが、記事内におけるLooker Studio(旧 Googleデータポータル)の説明内で一部旧データポータルのインターフェースが掲載されている場合ございます。ご了承いただけますと幸いです。
Looker Studio(旧 Googleデータポータル)の「計算フィールド」では関数を利用できる
「計算フィールド」とは?
Looker Studio(旧 Googleデータポータル)は、データソースとして取り込んだ情報をフィールドとして利用でき、このフィールドは、大きく「指標」と「ディメンション」に2分できます。この指標やディメンションを、自社で使いやすいようなデータに変換できるのが、「計算フィールド」という機能です。計算フィールドは、さまざまな関数を利用することで、元データにはない新しい指標を作成できます。
「計算フィールド」でできること
例えば、スプレッドシートに5月の売上一覧があり、その表に記載されているのが売上金額と来店客数の指標のみであっても、計算フィールドを利用して「売上金額/来店客数」という除算の計算式を入力することで、「客単価」という指標を追加することができます。このように、単純な足し算(加算)、引き算(減算)、かけ算(乗算)、割り算(除算)はもちろんのこと、さまざまな集計関数や条件付きでデータを置換する関数などが利用できるので、多彩な分析やレポート作成が可能となります。
「計算フィールド」での関数の使い方
では具体的に、計算フィールドを利用した関数の使い方を紹介します。今回は、以下の「5月売上」一覧を使って、除算関数を利用した計算フィールドを作成します。この表では、「売上金額/売上目標」で計算される「売上達成率」や、「売上金額/来店客数」で算出できる「客単価」がすでに表記されていますが、今回は「売上金額」と「来店客数」の指標を用いて、計算フィールドで「客単価」指標を作成する方法を紹介します。
【使用データソース】
【計算フィールドで関数を利用する手順】
(1)Looker Studioのトップ画面から「データソース」を選んで編集を開始します。今回は、上記の5月売上シートを選択します。
右上の 「フィールドを追加」 をクリックします。
レポートに表示される「フィールド名」を任意で入力します。次に、「計算式」のところに、「売上単価」と「来店客数」をドラッグして、除算の記号である「/」を入れて計算式を作ります。つまり、最初から客単価という指標がなくても、Looker Studio上で計算フィールドに関数を入力することで、「客単価」を追加できるということです。
これにより、新たに「客単価」というフィールドが追加されました。
レポート作成画面では、新フィールド「客単価」を指標に追加すると、表やグラフに反映されます。
これで、除算の関数を使った計算フィールドを作成できました。この手順が、基本となります。
Looker Studio(旧 Googleデータポータル)で使う関数の6つの具体的な使用例
このほか、曜日を表示させたい、正規表現を使って置換させたいなどの場合も、関数を入力することで簡単にできるようになります。中でも覚えておいた方が便利な、6つの使用例を紹介します。
例1. 曜日を表示させたい場合
日付の情報をもとに、曜日を表示させたい場合に役立つのが「WEEKDAY関数」です。
X(日付)の曜日を表示させる関数は
WEEKDAY(X, 入力形式)
となります。
Looker Studioでは、計算式を入力する画面で、上記のWEEKDAY関数を入力し、日付をドラッグして、表示したい形式を入力することで実現します。
例2. 特定の文字をエスケープ処理したい場合
Looker Studioでは、計算フィールドで使用できる正規表現関数として、「REGEXP_EXTRACT(X の中で正規表現のパターンに該当する最初の部分文字列を返す)」、「REGEXP_MATCH(X と Y が一致するときに真を、そうでないときに偽を返す)」、「REGEXP_REPLACE(X の中で正規表現に一致するすべてのテキストを、別の置換文字列に置き換える)」の3つが用意されています。
これらの関数を使う際に、正規表現の記述の中の、下記のような特殊文字を文字列として扱いたい場合は、
バックスラッシュ(¥)を追加してエスケープ処理する
ことが必要となります。
エスケープする特殊文字(例) | データのフィルタの エスケープ処理 |
正規表現関数の エスケープ処理 |
. | \. | \\. |
? | \? | \\? |
+ | \+ | \\+ |
[] | \[\] | \\[\\] |
例3. ハイパーリンクを表示させたい場合
ハイパーリンクを表示させたい場合は、遷移先となるURLと、Looker Studio上で表示するリンクのラベルを指定するだけで完了します。HYPERLINK関数は、
HYPERLINK(URL、リンクのラベル)
となります。
例4. 正規表現を使って置換を行いたい場合
正規表現を利用できる場合、テキストを別の置換文字列に置き換えることができるのが「REGEXP_REPLACE関数」です。
REGEXP_REPLACE関数は、
REGEXP_REPLACE(A, ‘[a-z]+’, ‘A’)
となり、A=置換するフィールド、[a-z]+=置換対象を正規表現で指定、A’=どんな値に置換するか正規表現で指定という、「対象」「置換したい箇所」「結果」を定義することで求めることができます。
例5. 元データの内容を別の任意の言葉に変更する場合
元のデータを任意の文字列に変更したい場合は、「CASE関数」を利用します。
例えば、下記の参考メディアを調査したデータの中で、「Google」という選択肢を「INTERNET」に変換したい場合は、以下の関数を計算フィールドに入力します。
【元データ】
このようにCASE関数は、
CASE
WHEN 参考メディア,”Google” THEN”INTERNET”
END
とします。一般的には、
CASE
WHEN 条件① THEN 結果①
WHEN 条件② THEN 結果②
WHEN 条件③ THEN 結果③
…
ELSE 結果④
END
の入力で、文字列の差し替えをすることができます。
例6. 元データの内容をグループングしたい場合
元のデータの中で、同じようなものをまとめてグルーピングする場合も、「CASE関数」を利用します。前述の参考メディアのデータの場合、「Facebook」「Twitter」「Instagram」「LINE」をまとめて「SNS」とグルーピングしたい場合は、以下のように入力します。
CASE
WHEN参考メディア IN(“Facebook”,”Twitter”,”Instagram”,”LINE”)THEN”SNS”
END
となります。
Looker Studio(旧 Googleデータポータル)で使える関数一覧
Looker Studio(旧 Googleデータポータル)で利用できる関数は多岐にわたります。カテゴリ別に一覧でまとめてありますので、参考にしてください。
■日付を出したいときに利用する関数
名前 | 説明 | 構文 | エクセルでの関数 |
CURRENT_DATE | 指定した、またはデフォルトのタイムゾーンの今日の日付を返します。 | CURRENT_DATE([time_zone]) | |
CURRENT_DATETIME | 指定した、またはデフォルトのタイムゾーンの今日の日付と時刻を返します。 | CURRENT_DATETIME([time_zone]) | |
DATE | 数または [日付と時刻] フィールドまたは式から [日付] フィールドを作成します。 | DATE(year, month, day) | |
DATE_DIFF | X と Y の日数の違いを返します(X-Y)。 | DATE_DIFF(X, Y) | DATEDIF |
DATE_FROM_UNIX_DATE | 整数を 1970-01-01 からの日数として解釈します。 | DATE_FROM_UNIX_DATE(integer) | |
DATETIME | 数から [日付と時刻] フィールドを作成します。 | DATETIME(year, month_num, day, hour, minute, second) | |
DATETIME_ADD | 指定した時間間隔を日付に加算します。 | DATETIME_ADD(datetime_expression, INTERVAL integer part) | |
DATETIME_DIFF | 2 つの日付の間にあるパーツの境界の数を返します。 | DATETIME_DIFF(date_expression, date_expression, part) | |
DATETIME_SUB | 指定した期間を日付から減算します。 | DATETIME_SUB(datetime_expression, INTERVAL integer part) | |
DATETIME_TRUNC | 指定した粒度まで日付を切り詰めます。 | DATETIME_TRUNC(date_expression, part) | |
DAY | X の日付を返します。 | DAY(X, 入力形式) | DAY |
EXTRACT | 日付または日付と時刻のパーツを返します。 | EXTRACT(part FROM date_expression) | |
FORMAT_DATETIME | 形式を指定した日付の文字列を返します。 | FORMAT_DATETIME(format_string, datetime_expression) | |
HOUR | X の時間を UTC タイムゾーンで返します。 | HOUR(X, 入力形式) | HOUR |
MINUTE | X の分を UTC タイムゾーンで返します。 | MINUTE(X, 入力形式) | MINUTE |
MONTH | X の月を返します。 | MONTH(X, 入力形式) | MONTH |
PARSE_DATE | 文字列を日付に変換します。 | PARSE_DATE(format_string, text) | |
PARSE_DATETIME | 時刻を含む日付に文字列を変換します。 | PARSE_DATETIME(format_string, text) | |
QUARTER | X の四半期を返します。 | QUARTER(X, 入力形式) | |
SECOND | X の秒を UTC タイムゾーンで返します。 | SECOND(X, 入力形式) | SECOND |
TODATE | UTC の指定された形式で日時の項目を返します。 | TODATE(X, 入力形式, 出力形式) | |
TODAY | 指定した、またはデフォルトのタイムゾーンの今日の日付を返します。 | TODAY([time_zone]) | |
UNIX_DATE | 1970-01-01 からの日数を返します。 | UNIX_DATE(date_expression) | |
WEEK | ISO 8601 規格に沿って年初からの X の週番号を返します。 | WEEK(X) | WEEKNUM |
WEEKDAY | X の曜日を返します。 | WEEKDAY(X, 入力形式) | WEEKDAY |
YEAR | X の年を返します。 | YEAR(X, 入力形式) | YEAR |
YEARWEEK | ISO 8601 規格に沿って X の年と週を返します。 | YEARWEEK(X) |
■地域名を出したいときに利用する関数
名前 | 説明 | 構文 | エクセルでの関数 |
TOCITY | X の都市名を返します。 | TOCITY(X, 入力形式) | |
TOCONTINENT | X の大陸名を返します。 | TOCONTINENT(X, 入力形式) | |
TOCOUNTRY | X の国名を返します。 | TOCOUNTRY(X, 入力形式) | |
TOREGION | X の地域名を返します。 | TOREGION(X, 入力形式) | |
TOSUBCONTINENT | X の亜大陸の名前を返します。 | TOSUBCONTINENT(X, 入力形式) |
■集計に関する関数
名前 | 説明 | 構文 | エクセルでの関数 |
AVG | X のすべての値の平均を返します。 | AVG(X) | AVERAGE |
COUNT | X の値の数を返します。 | COUNT(X) | COUNT |
COUNT_DISTINCT | X の固有な値の数を返します。 | COUNT_DISTINCT(X) | |
MAX | X の最大値を返します。 | MAX(X) | MAX |
MEDIAN | X のすべての値の中央値を返します。 | MEDIAN(X) | MEDIAN |
MIN | X の最小値を返します。 | MIN(X) | MIN |
PERCENTILE | フィールド X のパーセンタイル ランク Y を返します。 | PERCENTILE(X,Y) | |
STDDEV | X の標準偏差を返します。 | STDDEV(X) | |
SUM | X のすべての値の合計値を返します。 | SUM(X) | SUM |
VARIANCE | X の分散を返します。 | VARIANCE(X) |
■算術に関する関数
名前 | 説明 | 構文 | エクセルでの関数 |
ABS | 数値の絶対値を返します。 | ABS(X) | ABS |
ACOS | X の逆双曲線余弦を返します。 | ACOS(X) | ACOSH |
ASIN | X の逆双曲線正弦を返します。 | ASIN(X) | ASINH |
ATAN | X の逆双曲線正接を返します。 | ATAN(X) | ATANH |
CEIL | X の最小の整数値を返します。たとえば X が v だった場合、CEIL(X) が返す値は v 以上になります。 | CEIL(X) | TRUNC |
COS | X の余弦を返します。 | COS(X) | COS |
FLOOR | X の最大の整数値を返します。たとえば X が v だった場合、FLOOR(X) が返す値は v 以下になります。 | FLOOR(X) | INT |
LOG | X の自然対数を返します。 | LOG(X) | LOG |
LOG10 | 10 を底とする X の対数を返します。 | LOG10(X) | LOG10 |
NARY_MAX | X、Y、[、Z]* の最大値を返します。入力引数はすべて同じ型で、すべて数字かすべてテキストである必要があります。また、少なくとも 1 つの入力引数が項目であるか、1 つの項目を含む式である必要があります。 | NARY_MAX(X, Y, [Z]*) | |
NARY_MIN | X、Y、[、Z]* の最小値を返します。入力引数はすべて同じ型で、すべて数字かすべてテキストである必要があります。また、少なくとも 1 つの入力引数が項目であるか、1 つの項目を含む式である必要があります。 | NARY_MIN(X, Y, [Z]*) | |
POWER | X を Y 乗した結果を返します。 | POWER(X, Y) | POWER |
ROUND | X を Y の桁で四捨五入した値を返します。 | ROUND(X, Y) | ROUND |
SIN | X の正弦を返します。 | SIN(X) | SIN |
SQRT | X の平方根を返します。ただし、X は非負数である必要があります。 | SQRT(X) | SQRT |
TAN | X の正接を返します。 | TAN(X) | TAN |
■条件をつけるための関数
名前 | 説明 | 構文 | エクセルでの関数 |
CASE | 後に続く各 WHEN 節の condition を評価し、condition が true になる最初の result を返します。残りの WHEN 節と ELSE 節は評価されません。すべての条件が false または NULL である場合、else_result が存在する場合はこれを返し、存在しない場合は NULL を返します。 | CASE | |
CASE(単純) | 後に続く各 WHEN 節の input_expression と expression_to_match を比較し、この比較で true を返す最初の result を返します。 | CASE input_expression | |
IF | condition が true の場合は true_result を返し、それ以外の場合は false_result を返します。condition が true の場合、false_result は評価されません。また、condition が false または NULL の場合、true_result は評価されません。 | IF(condition, true_result, false_result) | |
COALESCE | フィールド リストの中で最初に見つかった非欠損値を返します。 | COALESCE(field_expression[,field_expression, …]) | |
IFNULL | 入力値が null の場合は結果を返し、そうでない場合は入力値を返します。 | IFNULL(input_expression, null_result) | |
NULLIF | 入力値が式に一致する場合は null を返し、そうでない場合は入力値を返します。 | NULLIF(input_expression, expression_to_m |
■テキストに関する関数
名前 | 説明 | 構文 | エクセルでの関数 |
CONCAT | X と Y を連結したテキストを返します。ただし、X と Y のいずれかは、少なくとも 1 つの項目を含む式である必要があります。他方は文字テキストでもかまいません。また、X と Y は両方とも集計された値であるか、両方とも非集計の値である必要があります。 | CONCAT(X, Y) | |
CONTAINS_TEXT | X が Y を含む場合には true を返します。それ以外の場合は false を返します。大文字と小文字が区別されます。 | CONTAINS_TEXT(X, text) | |
ENDS_WITH | X がテキストで終わる場合は true を返します。それ以外の場合は false を返します。大文字と小文字が区別されます。 | ENDS_WITH(X, text) | |
HYPERLINK | URL へのハイパーリンクを、リンクテキストを付けて返します。 | HYPERLINK(URL、リンクのラベル) | HYPERLINK |
LEFT_TEXT | X の先頭から指定した数の文字を返します。文字数は length で指定します。 | LEFT_TEXT(X, length) | |
LENGTH | X の文字数を返します。 | LENGTH(項目または式) | LEN |
LOWER | X を小文字に変換します。 | LOWER(項目または式) | LOWER |
REGEXP_EXTRACT | X の中で正規表現のパターンに該当する最初の部分文字列を返します。 | REGEXP_EXTRACT(項目または式, 抽出正規表現パターン) | |
REGEXP_MATCH | X と Y が一致するときに真を、そうでないときに偽を返します。 | REGEXP_MATCH(X, 正規表現式) | |
REGEXP_REPLACE | X の中で正規表現に一致するすべてのテキストを、別の置換文字列に置き換えます。 | REGEXP_REPLACE(A, ‘[a-z]+’, ‘A’) | |
REPLACE | X に含まれるすべての Y を Z に置き換えた X のコピーを返します。 | REPLACE(項目または式, 既存の文字, 置換文字) | REPLACE |
RIGHT_TEXT | X の末尾から指定した数の文字を返します。文字数は length で指定します。 | RIGHT_TEXT(X, length) | |
STARTS_WITH | X がテキストで始まる場合に true を返します。それ以外の場合は、false を返します。大文字と小文字が区別されます。 | STARTS_WITH(X, text) | |
SUBSTR | X のサブテキストを返します。サブテキストは X[Y]、X[Y+1]、…、X[Y+Z-1] で構成される値です。 | SUBSTR(項目または式, 開始インデックス, 長さ) | |
TRIM | 最初と最後の空白文字を削除した X を返します。 | TRIM(項目または式) | TRIM |
UPPER | X を大文字に変換します。 | UPPER(項目または式) | UPPER |
■その他の関数
名前 | 説明 | 構文 | エクセルでの関数 |
CASE | 指定したブール式に基づいて 1 つの値のみを求めます。 | CASE | IFS |
WHEN C = ‘yes’ | |||
THEN ‘done:yes’ | |||
ELSE ‘done:no’ | |||
END | |||
CAST | CAST (field_expressionAS [タイプ]) | 特定の項目や式を「タイプ」にキャストします。CAST 内で集計項目を使うことはできません。 | |
IMAGE | 表に画像を追加します | IMAGE(Image URL, [Alternative Text]) | |
STDDEV | 関数は X の標準偏差を返します。 | STDDEV(pageviews) | STDEVP |
Looker Studio(旧 Googleデータポータル)で関数を利用するときの注意点
計算フィールドの関数は、エクセルの関数と同じように利用できるものもありますが、「END」表記を忘れないようにするなど、関数によっては異なるケースもあります。正しいデータを得るためにも、計算フィールドでの使い方をマスターして、利用するようにしましょう。
まとめ:Looker Studio(旧 Googleデータポータル)を関数を利用して自由自在に操ろう
Looker Studio(旧 Googleデータポータル)で、計算フィールドの関数を利用する方法を解説しました。計算フィールドで利用できる関数は多数あり、その用途や使い方を理解すると、さまざまなアウトプットを作ることができ、自社に有用なレポート作成も容易になります。計算フィールドを使うことで、多様な視点で分析したデータを可視化し、作業負担も軽減できるLooker Studioの利用を、ぜひご検討ください。
Looker Studio(旧 Googleデータポータル)のテンプレートなら
Datafolio(データフォリオ)はLooker Studio(旧 Googleデータポータル)のテンプレートECです。通常大変な労力がかかるLooker Studioのレポート作成がプロマーケターのテンプレート活用でわずか1分程度で利用ができます。価格も数百円〜数千円のレンジなのでリーズナブルにLooker Studioレポート作成ができます。ぜひご参照ください。