Tableau で行う表計算トップ 10

このページでは、Tableau で使えるようになると便利な 10 通りの表計算をご紹介します。ほとんどの表計算の場合、簡単な計算式を書く必要があるので、実際に操作できる Viz と手順をタブ付きビューで用意しました。より詳しくご覧になりたい場合は、各ワークブックをダウンロードしてご確認ください。

編集者注: このブログは、Ellie Fields による当初の内容を基にして 2019 年 11 月に更新されました。

このページでは、Tableau で使えるようになると便利な 10 通りの表計算をご紹介します。実際に操作できる Viz と手順をタブ付きビューで用意しました。より詳しくご覧になりたい場合は、各ワークブックをダウンロードしてご確認ください。

表計算とは、ビジュアライゼーション内の値に適用できる変換式です。現在ビューに表示されているものに基づいて Tableau のローカルデータで計算を行う、特殊なタイプの計算フィールドです。そのため、ビジュアライゼーションで除外されているディメンションやメジャーは、計算結果で考慮されません。

表計算の基本

表計算には、場所指定フィールドと区分指定フィールドの 2 つのフィールドを使用します。フィールドのしくみを知ることこそ、表計算を理解するカギです。

  • 区分の指定フィールドはスコープを定義: 区分の指定フィールドは、ビューを複数の区分またはサブビューに分割します。その後、それぞれの区分内のマークに表計算が適用されます。
  • 方向の指定フィールドは方向を定義: 方向の指定フィールドは、たとえば累計の計算や値と値の差の計算で、計算が移動していく「方向」を定義します。

Tableau でスコープや方向を定義する方法は、最終的な結果をどれほどコントロールしたいかによって変わります。

  • 簡易表計算: 区分の指定 (スコープ) と方向の指定 (方向) のどちらかで、詳細レベル内のすべてのディメンションを含めます。Tableau はユーザーの選択の結果として、ディメンションを方向の指定として識別することも、区分の指定として識別することもあります。[次を使用して計算] で変更することもできますが、そのオプションはビューの構造によって変わります。
  • 表計算の追加: 表計算は、メジャーのコンテキストメニューで [表計算の追加] を選択して追加することもできます。この方法では、[特定のディメンション] を使って、方向の指定に使用するディメンションと区分の指定に使用するディメンションを決められます。
  • 次を使用して計算: メジャーのコンテキストメニューで [次を使用して計算] を選択すると、表の構造または特定のフィールドに基づいて表計算を実行できます。なお、ビューの構造が変わると結果も変わります。
  • 表計算の編集:メジャーのコンテキストメニューで [表計算の編集] を選択すると、ビューで区分や方向を決めるフィールドを指定できます。[特定のディメンション] で指定された区分と方向は、ビューの構造が変わっても同じ結果を維持します。

詳しくは、「表計算入門」をご覧ください。

1.基準日からの変化率

表計算で、任意の値からの変化率を計算できます。たとえば、あなたが株式ポートフォリオに興味があり、ある時点からの株の相対的なパフォーマンスを評価したいと考えているとします。その場合、「投資日」を設定し、対象の株をすべて同一の時点で正規化することで、変化率を示す折れ線グラフが得られます。基準日を調整するにはスライダーを使用します。

基準日のパラメーターと WINDOW_MAX 関数を使って基準日の終値を算出し、そこから各株の相対的な利益を求めることもできます。

2.共通の基準値

絶対的な時系列よりも、共通の起点からデータを分析したい場合があります。ここでは、映画『トイ・ストーリー』の 3 作目までの興行収入を例に考えます。3 作品を比較するには、公開日を起点に週ごとの総収入を見ていくのが一番です。

Tableau の INDEX() 関数を使用すると、公開日からの週数を簡単に計算できます。この例の区分指定フィールドは「Movie (作品)」、場所指定フィールドは週数です。

3.経時的な売上合計に対する割合 (セカンダリ計算)

2 種類の表計算を一度で済ませたいと思うことは少なくありません。たとえば、会社が重要視する分野の売上が、時間とともに増加しているのか減少しているのかは、興味深い情報です。この計算では、まず分野ごとに売上の経時的累計を算出し、その値を総売上高に対する割合として再構成します。この手法は Tableau でセカンダリ計算とも呼ばれ、式を記述せずに計算することができます。

[1st Pass] (第 1 段階) タブでは分野ごとの売上を経時的に累計したグラフを、[2nd Pass] (第 2 段階) タブでは各分野の経時的累計を売上合計に対する割合で示したグラフをご覧いただけます。

4.並べ替えてもランクを維持するグラフ

この例では、ある製品について 1 年間または 1 か月間でのランクと、経時的なランクの変動を示す必要があるとします。このような目的には順位推移グラフを作成します。時間とともに起こる変動を折れ線グラフで示したものです。左側 (2007 年 1 月時点) の順位表では低い位置にある [Copiers and Fax] (コピー機とファックス機) が、右側 (2010 年 12 月時点) では第 3 位にランクインしています。また、[Copiers and Fax] の販売は非常に不安定だったこともわかります。

標準的な順位推移グラフです。単純なランク表計算に高度な設定をいくつか組み合わせて算出し、各製品の売上順位を示しています。

5.累計

コールセンターでサポートが進行中の問い合わせ件数や、在庫の数量を監視する必要があるとします。しかし、システムにはサポート中の問い合わせの件数が記録されないため、自分でその数字を導き出さなければなりません。これを計算式に表すと、(営業開始時の件数) + (新規件数) + (再開件数) - (終了件数) となります。

一見すると単純な計算のようですが、営業開始時の件数は前日の営業終了時の件数から求める必要があり、営業終了時の件数もまた、その日の営業開始時の件数から求める必要があります。つまり、計算の循環参照が生じてしまいます。

Tableau では、WINDOW_SUM 関数を使って累計を算出し、毎日の終了時件数を確定します。

6.加重平均

テストの点数や注文の優先度などのデータは、加重平均を使うと分析しやすくなります。たとえば、製品タイプを問わず全注文の平均的な優先度を調べており、注文数によってその優先度に重みを付けて、注文数の多い製品に高い優先スコアを割り当てられるようにしたいとします。このような場合は、加重平均による優先スコアを算出すれば、注文数が多く、優先度が高い製品の供給プロセスを最適化できます。今回は、Tableau で用意しているサンプルデータ、Superstore Sales データを使って、この計算を行いました。

ここでも WINDOW_SUM 関数を使用し、カテゴリごとに加重を計算して、その値を優先スコアに適用しました。

7.計算によるグループ分け

会社の出荷業務を担当している人なら、ある製品の輸送コストが平均より高い理由を知りたいのではないでしょうか。その場合、ウィンドウ全体の平均値を求め、その結果を使って数値のグループ分けや色分けのための計算を行えます。

8.移動計算の範囲と発生件数

小売業や情報活動などさまざまな状況で、一定の期間内に起こった出来事の回数が問題になることがよくあります。たとえば、不審なことが起こっても、起こった回数が 1 回であれば例外と考えても良いかもしれませんが、x 日間に n 回より多く起これば調査の正当な理由になる、といった場合です。

点は警報が発せられた回数を示します。通常は 0 回です。0 より上の位置にある点はその日に警報が発せられたことを示し、棒は x 日間に n 回より多く警報が発せられたことを示します。点と棒を右クリックするとデータが表示されます。

9.移動平均を計算する範囲を変更する

Tableau の簡易表計算機能を使い、すべての月の売上高について移動平均を計算した後に、今度はそれを発展させて、移動平均を計算する範囲をエンドユーザーが選択できるようにしましょう。水色の線は各月の売上高の合計を示し、オレンジの線は 15 か月の売上高の移動平均を示します。

パラメーターと移動平均の簡易表計算のカスタム設定とを組み合わせると、ユーザーは範囲を変えて平均を求めることができます。

10.周期ごとの平均との差分

四半期売上高を見る場合、その年の平均値との差を見ると興味深いことがあります。この例では注文数について、その年の平均値との差、全期間の平均値との差、合計値との差を示しました。