【Tableau】NOTではnullを除外できない

計算フィールドで分析に必要なフィールド (列)を新たに追加

TableauやTableau prepでは計算フィールドを活用することで、分析に必要なフィールド (列)を新たに追加することができます。

例えば以下の例では、左側が元々設定されていた「返品の理由」というフィールドです。

これを右側のフィールドのように、返品理由を「一般」と「一般以外」にざっくりと分けたい場合、計算フィールドを活用することで、分析の切り口や粒度を変えることができます。

この記事では計算フィールドで関数を用いて「一般」と「一般以外」に分ける方法について解説します。

その際に「一般以外」にNull(返品理由がブランク)を含める場合、計算式に工夫が必要になりますので、その点についても解説します。

今回はサンプルスーパーストアを使い、Tableau prepの画面で解説します。

Tableau prepにしてもTableauにしても計算フィールドで用いる関数の考え方は基本的に同じになります。

サンプルスーパーストアでは返品理由として以下のような結果が集計されています。

計算フィールドの作成から、新たなフィールド(列)を作成し、新たな分析の切り口を加えます。

NOT関数の除外対象にNull(ブランク)は含まれない

計算フィールドに次のような関数を入力し、返品理由を「一般」と「一般以外」に分けます。

IF NOT[返品の理由]=”一般”
THEN “一般以外”
ELSE “一般”
END

すると、新たなフィールドの「一般」には返品理由が「一般」だけではなくNull(返品理由がブランク)も含まれてしまいました。

新たなフィールドの「一般以外」には一般以外の返品理由があるものが含まれています。

NOT関数の除外対象にNull(ブランク)は含まれないことがわかります。

ISNULLで除外対象にNull(ブランク)を加える

NOT関数で除外できなかったNull(ブランク)を除外対象に加えるために、次のようにISNULL関数を使います。

IF ISNULL([返品の理由])OR NOT[返品の理由]=”一般”
THEN “一般以外”
ELSE “一般”
END

返品の理由がブランク、もしくは「一般」ではないものは「一般以外」に分類する条件式にしています。

Null(ブランク)を「一般以外」側に分類することができました。

NOT関数の除外対象にはブランクが含まれないという点が今回のポイントになります。

今回の内容が参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA