Tableau(タブロー)で特定の文字列を含む行・レコード・セルを抽出する方法を解説します。
合わせて特定の文字列を含むレコードをカウントする方法も解説していますので参考にしてみてください。
ここではCONTAINS関数を用いて特定の文字列が含まれているかどうかを確認する方法を解説しています。
CONTAINS関数とは?
CONTAINS関数は対象フィールドに指定の文字列が含まれているかどうかを判定する関数です。
下図の[対象フィールド]には対象の文字列が含まれているか調べたいフィールド(ディメンション)を入力して “文字列”には調べたいワードを入力して使います。

CONTAINS関数の結果は以下の真偽の2種類となります。
- 対象フィールドに文字列が含まれている場合は「真」
- 対象フィールドに文字列が含まれていない場合は「偽」
Sponsored link
特定の文字列を含むデータの抽出
特定の文字列を含むデータを抽出する方法を解説します。
説明例として、下図のデータから製品名に“コンピュータ”という文字列が含まれている行のみを抽出します。

- データペインの「▼」をクリックして「計算フィールドの作成」をクリックする
- CONTAINS関数を用いて対象フィールド[製品名]に文字列”コンピュータ”が含まれているか判定するフィールドを作成する。

【単数の場合の例】
CONTAINS([製品名],"コンピュータ")
【複数の場合の例】複数の文字列を含むレコードを判定したい場合はANDやORで用いて複数条件にする。
CONTAINS([製品名],"コンピュータ") AND CONTAINS([製品名],"白")
- 作成した判定フィールド[コンピュータ判定]をフィルタに設定する
- 「真」にチェックを入れて 指定の文字列が含まれているレコードを抽出する

以上で特定の文字列が含まれているレコードの抽出は完了です。

Sponsored link
特定の文字列を含むデータのカウント
特定の文字列を含むレコードをカウントする方法を解説します。
説明例として、下図のデータから製品名に“コンピュータ”という文字列が含まれている行がいくつあるかカウントします。

- データペインの「▼」をクリックして「計算フィールドの作成」をクリックする
- IF構文とCONTAINS関数を用いて対象フィールド[製品名]に文字列”コンピュータ”が含まれている場合は「1」 含まれていない場合は「0」となるフィールドを作成する。

【例1:IF構文】
IF CONTAINS([製品名],"コンピュータ") THEN 1 ELSE 0 END
【例2:IF構文+COUNT関数】文字列が含まれていないとNULLとなるようにIF構文の”ELSE 0”を削除する。
COUNT(IF CONTAINS([製品名],"コンピュータ") THEN 1 END)
作成したフィールドを「テキスト」または「行列シェルフ」にドラッグ&ドロップする。
結果として”コンピュータ”が含まれている行は「1」それ以外は「0」となっていることが確認できます。

全てのデータの中でのレコード数を確認する場合は行列シェルフからディメンションを削除してください。
結果は「19」とわかります。

Sponsored link
Tableau(タブロー)の学習本についてはコチラの記事でまとめてますので参考にしてみてください。
初学者向け おすすめ学習書
コメント