Alteryxで複数の条件を指定してデータを抽出する

こんにちは。Alteryxサポートエンジニアとして勉強中のスズです。

今回は複数の条件を指定してデータを抽出する方法についてご紹介します。

複数の条件を指定してデータを抽出する

使用するツール

データの絞り込みにはFilterツール(Preparation -> Filter)を使用します。

FilterツールではBasic filterとCustom filterを選択できます。Basic filterでは1つの条件を指定できますが、Custom filterでは任意の入力ができるため、複数の条件を指定することができます。今回はCustom filterを使って複数の条件を指定してみます。

AまたはB

ORAまたはBという条件を指定できます。

以下のデータで「Item」列が「ichogo」または「shiomame」のデータを抽出してみます。

Filterツールの設定は以下のとおりです。

[Item] == "ichigo" or [Item] == "shiomame"

[Item] == "ichigo" or "shiomame" ではなく、[Item] == "ichigo" or [Item] == "shiomame"と指定しています。

結果を確認すると、「Item」列が「ichogo」または「shiomame」のデータがT (True)に出力されています。

AかつB

ANDAかつBという条件を指定できます。

さきほどと同じデータで、今度は「Item」列が「ichigo」かつ「Year」列が「2016」のデータを抽出してみます。

Filterツールの設定は以下のとおりです。

[Item] == "ichigo" and [Year] == 2016

結果を確認すると、「Item」列が「ichigo」かつ「Year」列が「2016」のデータがT (True)に出力されています。

AまたはBかつCまたはD

ORANDを組み合わせてAまたはBかつCまたはDという条件を指定してみます。

同じデータを使用して、「Item」列が「ichogo」または「shiomame」かつ「Year」列が「2016」または「2017」のデータを抽出してみます。

Filterツールの設定は以下のとおりです。

([Item] == "ichigo" or [Item] == "shiomame") and ([Year] == 2016 or [Year] == 2017)

([Item] == "ichigo" or [Item] == "shiomame")のように、セットになっている条件を括弧でくくっています。

結果を確認すると、「Item」列が「ichogo」または「shiomame」かつ「Year」列が「2016」または「2017」のデータがT (True)に出力されています。

AかつBまたはCかつD

ORANDを組み合わせてAかつBまたはCかつDという条件を指定してみます。

同じデータを使用して、「Year」列が「2016」かつ「Item」列が「ichigo」または「Year」列が「2017」かつ「Item」列が「shiomame」のデータを抽出してみます。

Filterツールの設定は以下のとおりです。

([Year] == 2016 and [Item] == "ichigo") or ([Year] == 2017 and [Item] == "shiomame")

結果を確認すると、「Year」列が「2016」かつ「Item」列が「ichigo」または「Year」列が「2017」かつ「Item」列が「shiomame」のデータがT (True)に出力されています。

括弧を使うことで、ORANDを組み合わせて条件を設定していくことができます。

おまけ

Custom filterで条件を指定したいけど書き方が分からないという場合は、Basic filterでの条件指定を参考にすることができます。Basic filterで条件を指定すると、Custom filterにも条件文が表示されます。

Basic filterで条件を指定したのちCustom filterに切り替えると、Basic filterで指定した条件はそのまま残っています。ここから編集することも可能です。

最後に

今回は複数の条件を指定してデータを抽出する方法についてご紹介しました。

Alteryxの導入なら、クラスメソッドにおまかせください

日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。

alteryx_960x400