Alteryx関数シリーズキャッチ用

Alteryxで使用できる関数の「条件式関数」の使い方をご紹介します

 

条件式カテゴリの関数は、if文などの条件分岐を行います

条件式カテゴリの関数一覧

やりたいこと 関数名 概要 対応するExcel関数
条件によって処理を分岐 IF c THEN t ELSE f ENDIF 条件によって処理を分岐します IF(c, t, f)
条件によって処理を複数に分岐 IF c THEN t ELSEIF c2 THEN t2 ELSE f ENDIF 条件によって処理を複数に分岐します IF(c, t, IF(c2, t2, f))
条件によって処理を分岐 IIF(bool, x, y) 条件によって処理を分岐します IIF(bool, x, y)
複数条件によって処理を分岐 Switch(Value, Default, Case1, ..., CaseN, ResultN) 複数条件によって処理を分岐します Switch(Value, Case1, ..., CaseN, ResultN, Default)

 

各関数の使い方とサンプル

IF  THEN  ELSE  ENDIF ・・・ 条件によって処理を分岐します

IF c THEN t ELSE f ENDIF

c で条件式、t で条件に対してTrueだった場合の処理、f で条件に対してFalseだった場合の処理を指定します。(フォーミュラツールの出力データ型を Bool型にした場合は、条件に対して「True」「False」で結果を表記することができます。)

 

Sample

下の例では、A列が 0 の時は T、それ以外の場合は F が返るように処理を分岐させています。

補足

下記のように、IF関数を入れ子にすることもできます。下記の場合、 x = 0 かつ y = 0 の場合は result1、x = 0 の場合は result3、 x = 0 以外の場合は result2 の結果が返ります。

IF x=0 THEN
 IF y=0 THEN
 "result1"
 ELSE
 "result3"
  ENDIF
ELSE
"result2"
ENDIF

 

IF c THEN t ELSEIF c2 THEN t2 ELSE f ENDIF ・・・ 条件によって処理を複数分岐します

IF c THEN t ELSEIF c2 THEN t2 ELSE f ENDIF

c で条件式、t で条件に対してTrueだった場合の処理、c2 で次の条件式、t2 で次の条件式 ... と、複数に処理を分岐できます。f で条件に対してFalseだった場合の処理を指定します。

Sample

下の例では、A列が 0 の時は「T_0」、 1 の時は「T_1」、2 の時は「T_2」、それ以外の場合は F が返るように処理を分岐させています。

 

IIF ・・・ 条件によって処理を分岐します

IIF(bool, x, y)

bool で条件式、x で条件に対してTrueだった場合の処理、y でFalseだった場合の処理を指定します。

 

Sample

下の例では、A列が 0 の時は T、それ以外の場合は F が返るように処理を分岐させています。

 

Switch ・・・ 複数条件によって処理を分岐します

Switch(Value, Default, Case1, ..., CaseN, ResultN)

Valueで判定対象、Defaultで条件を満たさない場合の処理を指定します。Caseでそれぞれの条件と、条件に対してTrueだった場合の処理を指定します。

Switch関数の条件は「指定した値と一致するか」でしか判断ができないので、注意が必要です。判定対象を増やしやすいため、判定する対象がたくさんある場合に使うと便利な関数です。

 

Sample

下の例では、A列が 0 の時は「T_0」、 1 の時は「T_1」、2 の時は「T_2」、それ以外の場合は F が返るように処理を分岐させています。

 

 

サンプルワークフロー ダウンロード

FormulaFunction_Conditions

※Alteryx Designer 2019.1.6.58192時点の情報です

Alteryxの導入はぜひKCMEで!

セルフサービスデータ分析ツール「Alteryx」は4週間無償トライアルが可能です。

製品に対する操作方法、技術的な質問などは導入前・導入後に関わらずメールにてお答えします。また、Alteryxを用いた環境構築、開発、ヘルプデスク対応、ハンズオン、トレーニング、ワークフロー作成なども承りますので、お気軽にご相談ください。

おすすめの記事