計算式のデバッグ技法 — エラーの原因を特定して修正する手順
導入
計算式を入力したのに赤い波線が消えない、ビューに置いたら予想外の値が返ってきた――Tableauの計算式デバッグで詰まった経験はないでしょうか。エラーの種類を知っておけば、原因を素早く特定できるようになります。
くわしく知ろう
Tableauの計算式エラーは大きく「構文エラー」と「論理エラー」の2種類に分けられます。構文エラーは計算式の文法が正しくない場合に発生し、計算式エディタ上で赤い波線やエラーメッセージとして即座に検出されます。括弧の対応ミス、関数名のスペルミス、文字列の引用符忘れなどが代表的な原因です。一方、論理エラーは構文として正しいため保存はできるものの、期待した結果を返さないケースを指します。こちらはビューに配置して実際の値を確認するまで気づきにくい点に注意が必要です。
デバッグの手順としては、まず計算式エディタ下部のエラーメッセージを読むことが第一歩です。「この関数は文字列型を必要としています」のようにデータ型の不一致が示されることが多く、原因の特定に直結します。次にIIF関数やIF文を一時的に挿入して特定の条件での戻り値を確認するテクニックも有効です。また、計算式を小さな単位に分割し、中間結果を個別のフィールドとして作成することで、どの段階で意図と異なる値が生まれているかを追跡できます。
ZN関数やIFNULL関数はNULL値への対処でよく使われます。ZNはNULLを0に変換し、IFNULLはNULLのときに指定した代替値を返します。計算式でNULLが意図せず混入すると集計結果が歪むため、NULL処理は計算式デバッグの重要な確認ポイントになっています。データ型の変換にはSTR()・INT()・FLOAT()・DATE()・DATEPARSE()などの型変換関数を使います。型が合っていないとそもそも計算式が動作しないため、フィールドのデータ型を確認する習慣が大切です。
具体例
たとえば「売上が100万円を超えたら"高"、それ以外は"低"」という計算式を作ったのにすべてのマークで"低"が表示されるとき、売上フィールドが文字列型になっていることが原因である場合があります。INT([売上])やFLOAT([売上])で型を明示的に変換するだけで解決するケースが多いです。
まとめ・試験ポイント
- 構文エラー=計算式エディタで即時検出 / 論理エラー=実行してみないと気づかない
- デバッグの第一歩=エディタ下部のエラーメッセージを読む
- ZN()=NULLを0に変換 / IFNULL()=NULLを任意の値に置換
- データ型不一致が最も多い計算エラーの原因のひとつ
- 計算式を小さな単位に分割して中間結果を確認するのが有効
- 試験では構文エラーと論理エラーの違い、NULL処理関数の使い分けが問われる
学習した内容を模擬試験で確認しよう。Tableau Data Analyst模擬試験で実力を測ろう。
Tableau DA模擬試験を見る