このページは解答編です。
↓ネ
↓タ
↓バ
↓レ
↓防
↓止
答えと解説
設問はこちらでした。
P-012: 店舗データ(store.csv)から、住所 (address) に”横浜市”が含まれるものだけ全項目表示せよ。
解答ワークフローは以下のようになります。
![](https://analytics-x.tech/wp-content/uploads/2022/07/Day12_5.png)
単純な内容ですが、様々な解法があります。基本的にはフィルターツールを使いますが、判定方法は様々です。
- Contains関数(基本フィルター)
- Contains関数(カスタムフィルター)
- 正規表現ツール
- REGEX_Match関数
1. Contains関数(基本フィルター)
「住所 (address) に”横浜市”が含まれる」ということなので、シンプルに基本フィルターが利用できます。フィールドは「address」、演算子は「含む」、値は「横浜市」をそれぞれ入力しましょう。
![](https://analytics-x.tech/wp-content/uploads/2022/07/Day12_1.png)
ワークフローとしては以下の通りとなります。
![](https://analytics-x.tech/wp-content/uploads/2022/07/Day12_6.png)
2. Contains関数(カスタムフィルター)
次にカスタムフィルターを使う方法をご紹介します。基本フィルターですと関数名は出ないのですが、内部的には関数を使っています。
「含む」という場合はContains関数を使います。関数の使い方としては、
Contains(検索先文字列, 検索文字列)
となります。つまり、今回であれば以下のようになります。
Contains([address], "横浜市")
フィルターツールの設定は以下のとおりとなります。
![](https://analytics-x.tech/wp-content/uploads/2022/07/Day12_2.png)
ワークフローは以下の通りとなります。
![](https://analytics-x.tech/wp-content/uploads/2022/07/Day12_7.png)
3. 正規表現ツール
若干高度な手法になりますが、正規表現ツールを使うこともできます。
今回は、「住所 (address) に”横浜市”が含まれる」ということなので、「.*横浜市.*」という式になっていますが、それぞれ以下のような意味となります。
.* : 0文字以上の文字列を示します(「.」は文字1文字(アルファベットでも記号でも数字でもなんでもよいです)、「*」は直前の文字0以上の繰り返し、を意味します)
横浜市 : 「横浜市」という文字列です
横浜市を「.*」で挟んでいるので、文中のどこかに横浜市がある、ということになります。実際のツールの設定は以下の通りです。
![](https://analytics-x.tech/wp-content/uploads/2022/07/Day12_3.png)
実際のワークフローは以下のようになります。
![](https://analytics-x.tech/wp-content/uploads/2022/07/Day12_8.png)
4. REGEX_Match関数
こちらも若干高度な方法になりますが、正規表現ツールを使う代わりに、REGEX_Match関数を使うことで使用するツールの数を減らす方法をご紹介します。
![](https://analytics-x.tech/wp-content/uploads/2022/07/Day12_9.png)
フィルターツールで使うREGEX_Match関数は以下のように使います。
REGEX_Match(検索文字列, 正規表現式)
今回であれば以下のようになります。
REGEX_Match([address], ".*横浜市.*")
ここで設定する正規表現式は、解答その3の正規表現ツールに設定した式と同様です。
コメント