【Tableau】複数フィルターをOR条件で組み合わせる
概要
Tableauでは、複数のフィルターを適用すると、すべてのフィルター条件に一致するデータが抽出されます。つまり、複数のフィルターを適用する際には、デフォルトでAND条件のフィルターが行われます。
では、複数のフィルター条件のいずれかに一致するデータを抽出する、すなわちOR条件のフィルターを適用するにはどうすればよいでしょうか。
本記事では、セットを活用して複数のフィルターをOR条件で適用する方法を紹介します。
使用するデータ
Tableauのサンプルデータセット「Superstore」を使用します。
Country、Region、CategoryごとにSalesを集計することを考えます。
AND条件での複数フィルター適用
まず、Country、Region、Categoryの全てが選択された値に一致するデータを表示する方法を考えます(AND条件)。
例として、条件「Country=カナダ かつ Region=西部 かつ Category=(家具または事務用品)」を満たすデータを表示してみます。
これは単純に、Country、Region、Categoryをフィルターに設定し、Countryを「Canada」、Regionを「West」、Categoryを「Furniture」と「Office Supplies」に指定することで実現できます。
OR条件での複数フィルター適用
次に、Country、Region、Categoryのいずれかが選択された値に一致するデータを表示する方法を考えます(OR条件)。
例として、条件「Country=カナダ または Region=西部 または Category=(家具または事務用品)」を満たすデータを表示してみます。
1. フィルターとして使用するディメンションのセットを作成
Country、Region、Categoryのセットをそれぞれ作成します。
2. セットをOR条件で組み合わせたディメンションをフィルターに追加
以下画像のように、1で作成したセットをOR条件で組み合わせたディメンションを作成します。
作成したディメンションが真の場合にデータを表示するように、フィルターに追加します。
3. セットを表示し、挙動を確認
1で作成したセットを表示し、Countryセットを「Canada」、Regionセットを「West」、Categoryセットを「Furniture」と「Office Supplies」に設定します。
表示されているデータを確認します。
- カナダのデータ
全地域、全カテゴリのデータが表示されています。 - アメリカのデータ
- 西部のデータ
全カテゴリのデータが表示されています。 - 西部以外の地域
カテゴリがFurnitureとOffice Suppliesのデータのみが表示されています。
- 西部のデータ
以上より、OR条件「カナダまたは西部または(家具または事務用品)」を満たすデータが表示されていることがわかります。
OR条件適用時の注意点
条件「カナダまたは西部」を満たすデータを表示する方法を考えます。
Categoryは任意なので、すべてのCategoryにチェックすればよいと考えるかもしれませんが、これは誤りです。なぜなら、「Categoryが家具または技術または事務用品のデータ」が全データと等しいためです。
正しい方法は、Categoryセットのチェックをすべて外すです。そうすると、条件「カナダまたは西部またはどのCategoryでもない」となり、「どのCategoryでもない」データは存在しないため、実質的に条件「カナダまたは西部」となります。
Discussion