こんにちは。エクスチュアの渡部です。
今回はDataStudio(データポータル)で特定のフィールドを使って複数のデータソースにフィルターを適用するため方法をお伝えします。
DataStudioでデータソースを跨いだフィルターの実装は、
以下のどちらかを満たしている必要があります。
・ データソース間のコネクタ&カラム名&データ型を揃える
・ データソース間の該当フィールドの項目IDを揃える
それぞれ解説します。
① コネクタ&カラム名&データ型を揃える
こちらは簡単なパターンです。
「コネクタ」「カラム名」「データ型」が元データの時点で同じであれば、フィルターは勝手に適用されます。
「コネクタが同じ」とは、「両方ともSpreadSheet」「両方ともBigQuery」とかそういうことです。
カラム名は別名で変更するのではなく、データソースの時点で揃っている必要があります。
スプレッドシートから読み込んだ以下の2つのデータソースを例に説明します。
今回使うデータソースは都道府県と人口の2列から成り立っています。
ソース1:pref(都道府県)列とh22(平成22年の人口)列
ソース2:pref(都道府県)列とh27(平成27年の人口)列
データ元:都道府県別人口と人口増減率(エクセル:35KB)
これは、「コネクタ&カラム名&データ型を揃える」という条件を満たしています。
そこで以下のようなレポートを作成します。
左側はソース1を用いたグラフ。右側はソース2を用いたグラフです。
上部のフィルターはソース1のpref列から作成しています。
prefのフィルターで「東京」「神奈川」「大阪」のみに絞ると、
ソース1で作成したグラフはもちろん、ソース2で作成したグラフも結果が絞られました。
このように、「コネクタ&カラム名&データ型を揃える」これを満たしていれば
データソースをまたいでいても勝手にフィルターはかけることが出来ます。
②「項目ID」を揃える
次は①のようにはいかない時にデータソースを跨いでフィルターをかける方法です。
・片方はスプレッドシートだけど片方はBigQuery
・計算フィールドの結果を用いて複数データソースにフィルターしたい
といった際に役立ちます。
そんな時はデータソース間で
項目ID(Field ID)を揃えた計算フィールドを作成すれば解決します。
※項目IDは計算フィールドを作成する際に出てくるこれです。
例として、上記のレポートにBigQueryに入っているソース3を増やしたレポートを用います。
ソース3:pref(都道府県)列とh29(平成29年の推計人口)列
データ元:都道府県別人口と人口増減率(エクセル:35KB)
一度、各データソースを用いて以下のようなレポートを作成します。
コネクタが異なるとフィルターがかからないことを確認するために、
先ほどのようにソース1から作成したprefのフィルターで「東京」「大阪」「神奈川」のみにフィルターしてみます。
すると、以下のような結果になりました。
ソース1、ソース2を使用したデータにはフィルターがかかりますが、
ソース3はコネクタが違うためフィルターがかかりませんね。
では、各データソース間で項目IDを同じにした計算フィールドを作成して、
データソースを横断出来るフィルターをかけます。手順は以下の通りです。
============
1. ソース1で「pref_2」列を作成する。※列名は任意
数式:CONCAT(pref,””) ※これはpref列と同じ値を計算フィールドで作成するための手順です。
2. ソース1の「pref_2」列の項目IDを確認しコピーする
項目IDをコピーします。 ※今回は「calc_u0*****」
3. ソース2とソース3で「pref_2」を同じ数式で作成する。
その際に、項目IDに2でコピーしたソース1の項目IDを貼り付けて上書きする。
新しく計算フィールドを作成する際、項目IDには既に値が入っていますが、任意の値で上書き出来ます。
そこで、2の手順でコピーしたソース1のpref_2の項目IDを貼り付けます。
この手順をソース2とソース3で行います。
4. 「pref_2」列でフィルターを設置する。
下記画像のように、pref_2列を用いたフィルターを設置します。
以上で作業は完了です。
============
試しに「東京」「千葉」「青森」でフィルターをかけてみた結果が下記です。
異なるコネクタ間でもフィルターがかかっていることが確認できます。
この手法は、このように既に存在している列を用いる場合のみでなく、
「計算フィールドによる返り値を基にしたフィルター」を
複数データソースに適用したい際にも使用出来ます。
例えば、以下の式で「地方」というフィールドを作成します。
同じフィールドを各データソースで項目IDを揃えて作成し、フィルターを設置します。
試しに「九州・沖縄」のみでフィルターをしてみます。
結果が該当都道府県に絞られるのが確認出来ました。
参考URL:http://www.datacisions.com/data-studio-filter-control-to-apply-on-multiple-data-sources/
———-
エクスチュアはGoogleCloudのパートナー企業です。
GoogleCloudPlatform,Adobe Experience Cloud,Tableauなどに精通したスタッフがデータ活用をサポートします。
お問い合わせはこちらから
ブログへの記事リクエストはこちらまで