【初心者向け】Tableauで「1つ前の値」を取得する方法|LOOKUP関数と使い方を徹底解説!

1. はじめに|「1つ前の値」を取得するシーンとは?

Tableauを使ったデータ分析で、「前の月の値」や「前の行の数値」を使って計算したい場面は少なくありません。特に、次のような用途に活用されます。


🔍 よくあるユースケース

  • 前月比・前週比の計算

  • 売上の増減トレンド

  • 時系列グラフでの変化分析

  • 累積グラフとの比較

  • ランキングや順位の変化追跡


このような時に役立つのが、**Tableauの「LOOKUP関数」**です。


2. 「1つ前の値」を取得する基本:LOOKUP関数とは?

Tableauにおける「1つ前の値」は、LOOKUP関数を使って取得するのが最も一般的です。


✅ LOOKUP関数の構文

tableau
LOOKUP([対象フィールド], -1)
  • LOOKUP:指定したフィールドの相対的な位置の値を返す関数

  • -11つ前の値を取得(+1は1つ後)


例:売上の1つ前の値を取得する

tableau
LOOKUP(SUM([売上]), -1)

この式は、現在の行の1つ前の行の売上合計を取得します。


3. 実践:1つ前の売上との差(前月比)を出す方法

では実際に、Tableauで「前月比」を表示する具体的なステップを解説します。


✅ ステップ1:データの準備

以下のような「月別の売上データ」をTableauにインポートします。

売上
1月 1000
2月 1200
3月 900

✅ ステップ2:売上合計をシートに配置

  • 「列」→

  • 「行」→ SUM(売上)

これで通常の折れ線グラフや棒グラフが表示されます。


✅ ステップ3:「1つ前の売上」を計算する

  1. 新しい計算フィールドを作成

  2. 以下の式を入力:

tableau
LOOKUP(SUM([売上]), -1)
  1. このフィールドに「前月売上」などの名前をつけて保存


✅ ステップ4:「前月比(差分)」を作成

再度、計算フィールドを作成し、以下のように設定します。

tableau
SUM([売上]) - LOOKUP(SUM([売上]), -1)

これで、「当月売上 − 前月売上」という変化量が計算されます。


✅ ステップ5:表示形式を調整

  • このフィールドを棒グラフやラベルに追加

  • 「%表示」をしたい場合は以下のような式で割合も出せます:

tableau
(SUM([売上]) - LOOKUP(SUM([売上]), -1)) / LOOKUP(SUM([売上]), -1)

※0除算に注意する必要があるので、IF文で制御してもOKです。


4. 表計算の設定を見直そう:正しく動かすための並べ替えとパーティション

LOOKUP関数は、表示中のテーブル順に依存するため、順番や粒度が異なると意図しない値になることがあります。


✅ テーブルの並び順が重要!

例:月別のデータが「1月 → 2月 → 3月」と並んでいないと、LOOKUP()の-1は前月を取得しません。

→ **「並べ替え」や「ディメンションの順序設定」**を確認し、時系列に正しく並んでいるかを必ずチェックしましょう。


✅ 表計算の編集で粒度を調整

  1. LOOKUP()フィールドの右クリック→「表計算の編集」

  2. 「計算の方向」を「指定のディメンション(例:月)」に設定

  3. パーティションを「すべてのデータを対象」にするか、カテゴリ単位で分けたい場合は「カテゴリ単位」にする

これにより、「どの単位で1つ前の値を見ていくか」が明確になります。


このように、LOOKUP関数と表計算の設定を組み合わせることで、正確な「1つ前の値」取得が可能になります。


5. 複数カテゴリで「1つ前の値」を取得する方法

多くの実務データでは、「年月」だけでなく「製品カテゴリ」や「部署」など複数のディメンションが絡むケースが一般的です。

たとえば、各カテゴリごとの月別売上変化を見たいとき、単純な LOOKUP(SUM([売上]), -1) では意図した結果が得られないことがあります。


✅ 解決方法:「表計算のパーティション設定」

  1. LOOKUP 関数を使用した計算フィールドを作成

  2. グラフ上で右クリック →「表計算の編集」

  3. 「計算の適用先(ディメンション)」に月とカテゴリの両方が含まれるように調整

  4. 「パーティション」はカテゴリごと、「方向」は月の昇順に設定

これにより、カテゴリごとに独立した前月比較が可能になります。


✅ 補足:カテゴリ別の差分計算式

tableau
IF ISNULL(LOOKUP(SUM([売上]), -1)) THEN NULL
ELSE SUM([売上]) - LOOKUP(SUM([売上]), -1)
END

NULLチェックを入れることで、初月の「前月値=存在しない」問題に対応できます。


6. よくあるエラーとその対処法

❗ 表示されない・NULLになる

  • 原因LOOKUP 関数は「存在しない行」の値を取得しようとするとNULLを返す。

  • 対処IFNULLZNで0補完、または条件付きで非表示制御。

tableau
IFNULL(LOOKUP(SUM([売上]), -1), 0)

❗ ソート順で結果が狂う

  • LOOKUP表示順に依存するため、並び替えやフィルターがずれていると「前の値」にならない。

  • 解決策:並び順を「月の昇順」など明示的に指定し、ディメンションの順序も確認。


❗ フィルターとの相性が悪い

  • 通常のフィルターは LOOKUP の参照対象そのものを消してしまう。

  • 解決策コンテキストフィルターや、LOD(Level of Detail)計算を使って影響を最小限に。


7. 応用:前年同月との比較を行うには?

LOOKUP 関数は相対行を参照するため、「前年同月比」など時間間隔が広い比較も可能です。


✅ ステップ

  1. データに「年月(例:2023年1月)」を追加

  2. 年単位で「12ヶ月前のデータ」を取得するには:

tableau
LOOKUP(SUM([売上]), -12)
  1. 差分・成長率を計算:

tableau
(SUM([売上]) - LOOKUP(SUM([売上]), -12)) / LOOKUP(SUM([売上]), -12)
  1. 表計算の設定で、「月順+カテゴリ順」に並べ替え必須。


8. 実務での活用例|可視化とレポートに活きる

📈 ダッシュボード:トレンドと差分の同時表示

  • 折れ線グラフで売上推移+下に前月比の棒グラフを配置

  • 視覚的に「上がった・下がった」がわかりやすくなる

  • 差分ラベルに色(増=青、減=赤)をつけてインサイト強調


💡 マーケティング分析での使い方

  • コンバージョン数やCPAの前月比、広告チャネル別の変化を確認

  • ROIの改善状況を「比率」で評価


💼 人事レポート

  • 各部署の離職者数・残業時間の「前月差分」を自動計算し、人事会議で報告

  • 異常値をアラート付きで表示することも可能


9. LOOKUP関数と他の関数の違い・使い分け

関数 用途 特徴
LOOKUP 相対位置の値を取得 時系列比較・差分計算に最適
PREVIOUS_VALUE 前行の計算結果を参照 累積などの逐次処理に使う
WINDOW_SUM 範囲の合計 移動平均や直近〇ヶ月合計に便利
INDEX 行番号を取得 フィルタやランキングの制御に

10. まとめ|Tableauで「1つ前の値」を正確に扱うためのポイント

Tableauで「1つ前の値」を取得する技術は、ビジネスにおける変化の見える化に欠かせない重要スキルです。


✅ 成功するためのチェックリスト:

  • LOOKUP関数は相対的に値を取得できる強力なツール

  • 表計算の設定で**「順番」や「パーティション」の指定が必須**

  • 複数カテゴリ・月・年など、粒度の意識がトラブルを防ぐ

  • NULL処理並べ替え順を丁寧に管理することで正確な値を表示できる

  • 差分・前年同月比・ダッシュボード連携で実務レベルの分析が可能


データを「ただ見る」のではなく、「どう変化したか」を理解するために、LOOKUP 関数と「1つ前の値」の活用は大きな武器となります。

今後、より高度な分析や自動レポートに取り組む際の基礎スキルとして、ぜひマスターしておきましょう。


関連記事

この記事へのコメントはありません。

カテゴリー

アーカイブ