🪽

Sigma Input tablesユースケース想定実践:『予測調整(Forecast Adjustment)』

に公開

AIと連携し、Excel感覚で操作できるクラウドBIサービス、Sigma(Sigma Computing)。

当エントリでは、Sigmaチュートリアルで公開・展開されているInput tablesを使った実践コンテンツを試してみたいと思います。幾つかあるユースケースの中から、今回は『予測調整(Forecast Adjustment)』にチャレンジしてみます。

はじめに

このQuickstartでは、SigmaのInput tablesを活用したユースケースを再現するための概要と手順を説明します。

Input tablesはSigma が管理するデータウェアハウステーブルで、ユーザーは独自のデータを追加し、自身の分析に統合することができます。

データがデータウェアハウスに存在しない場合、通常は複雑な技術的プロセスと人的リソースを要するETL処理が必要となります。現在、データウェアハウスにデータを追加する必要があるユーザーは、直接その作業を行うことが可能です。

Sigmaの顧客は既にInput tablesを以下の目的で利用しています:

  • 主要な値の手動入力
  • 分析モデリング
    • シナリオ
    • 予測
    • 地域計画
    • 販売計画
    • サプライチェーンモデリング
    • 分類

Sigmaの製品リリース戦略に関する詳細情報は下記情報をご参照ください。

https://help.sigmacomputing.com/docs/sigma-product-releases

対象読者

Sigmaを使用してQSコンテンツを作成しようとしている方で、コンテンツを拡張、調整、インタラクティブにしたり、「もしも」のシナリオを作成したい方。

前提条件

  • 最新のブラウザがインストールされたコンピュータ(使用するブラウザは問いません)
  • Sigma環境へのアクセス権限。Sigmaのトライアル環境も利用可能(推奨)
  • Sigmaの基本的な操作に慣れていることが前提(基本的な手順は省略されます)
  • 後述するダウンロード可能なプロジェクトファイル
  • Snowflakeアカウント(適切な管理権限とセキュリティ管理権限が必要)
  • Microsoft ExcelまたはGoogle Sheets(提供されるサンプルデータへのアクセス用として)

学習内容

顧客が現在入力テーブルをどのように利用しているか、幾つかの事例をレビューし、それらを自社のSigma環境で活用する方法を解説。

構築する内容

以下の3つのユースケースを確認します:

  • 予測
  • 迅速なデータプロトタイピング
  • 地域計画

ユースケース実践『予測調整(Forecasting Adjustment)』

当エントリでは『予測調整(Forecasting Adjustment)』というユースケースを実践していきます。

EMEA営業部門の副社長であるPaulaが、年間予測会議を進行しています。
この会議では、各地域のマネージャーが年間の最終数値を報告し、必要に応じて調整案を提示します。
これまでは、Paulaが複数のスプレッドシートを統合して作成したスプレッドシート上で
実施されてきました。
彼女はまた、次年度の計画を立て、各国の成長率を追加しています。
このスプレッドシート作業は彼女の時間を浪費するだけでなく、誤りの発生リスクも高いです。

...という前提・状況を踏まえて早速実践していきましょう。今回のユースケースを進めるためのSigmaワークブックを新規作成します。[+Create new]から[Workbook]を選択。

空の状態で一旦ワークスペースを保存します。任意の名前を入力し[Save]を押下。

ページタイトルを当エントリで行う内容:Forecast Adjustmentに変更しておきます。

Quickstartで用いるデータをページからダウンロード。

中身は以下のような感じとなっていることを確認しました。

$ wc Forecasts-from-Country-Managers.csv
      13      19     455 Forecasts-from-Country-Managers.csv
$ cat Forecasts-from-Country-Managers.csv
Country,FY23 Targets,FY23 Forecasts,Growth Adjustment
Austria,76000.0,74655.0,0.0
Belgium,128000.0,129999.0,0.0
Czech Republic,72000.0,71000.0,0.0
Denmark,225000.0,231210.0,0.0
Ireland,184000.0,191803.0,0.0
France,380000.0,383112.0,0.0
Germany,492000.0,499944.0,0.0
Italy,125000.0,127647.0,0.0
Netherlands,149000.0,151442.0,0.0
Portugal,46000.0,45481.0,0.0
Spain,100000.0,102568.0,0.0
Switzerland,210550.0,211951.0,0.0
United Kingdom,183000.0,174000.0,0.0

ワークブック下部メニュー[Input]から[CSV]を選択。

対象となるデータベース接続を選択し、併せてアップロードするCSVに上記で入手したファイルを指定。データベース接続に関しては予め『書き込みアクセス(Write access)』を有効化したものを用意しておいてください。(※詳細及び準備手順については下記エントリをご参照ください)

CSVの内容が取り込まれ、プレビュー表示がされました。[Save]押下。

取り込んだ内容がInput tablesとして作成されました。要素の名前をForecasts from Country Managersとリネームしておきます。

取り込まれた内容を確認してみると、Sigmaが内容を自動で識別し、適切なデータ型として処理していることが分かります。

この取り込んだデータを使って可視化を作成してみます。画面下部メニュー[Charts]から[Region]を選択。

対象ソースに前述手順で取り込んだCSV(の内容)を指定。

Country列を[Region]に指定。

すると、データ内容に準ずる形で地図が表示されるようになりました。

[ADD COLUMN]で項目を追加し、項目名を``と命名、数式の内容を以下のように記載します。

(([FY23 Forecasts] - [FY23 Targets]) / [FY23 Targets])

その他、各種設定を以下のように行うことで良い感じで可視化が彩られる形となりました。

  • #1: [CHART TYPE]にMap - Regionを指定
  • #2: [REGION]に[Country]を指定
  • #3:
    • #3-1: 新設した項目をForecast vs Targetと命名
    • #3-2: 上記項目の計算式を記載
  • #4: 色を表現する項目指定で[COLOR]タブにて[MARKS]の項目に上記#3で作成した項目を指定
  • #5: 表現方式にBy scaleを指定
  • #6: 任意のカラーバリエーションを選択

更に細かい指定を幾つか変更し、より表現力を増した可視化となりました。

  • Mapのフォーマット指定 - Map styleをStreetに変更
  • Mapのフォーマット指定 - Opacityを50%に変更
  • テーブルの項目値の書式をCurrencyに変更

そしてこのタイミングで、Austriaのマネージャーが『工場の一つでストライキが発生したため、予測を$10,000に削減する』と伝えてきました。

ここからはSigmaのInput tablesの機能を活用し、便利さを享受する場面となります。Input tablesの値を変更し、上記の内容を踏まえた可視化に変えてみましょう。

テーブルの値、AustriaFY23 Forecastの値を10000に変更し、Enterを押下します。すると変更した値の内容を反映する形で、地図の可視化が自動的に更新されました!

リアルタイムモデリング

Paulaは上記の通話後に自分で調整を加えたいと考えており、最終決定を下す前に、可視化における小さな変更の影響を考慮しながら、調整を試行錯誤できる機能を求めたいと思いました。

棒グラフ

Paulaが希望している可視化を追加するために、棒グラフを追加し、まずFY23とFY24の予測(国別)を比較してみましょう。新たな可視化を追加します。

画面下部メニュー[Charts]からBarを選択。

前回同様に取り込んだCSVデータソースを指定。

以下グラフの設定を実施。国別の目標値と予測値の比較棒グラフが出来上がりました。

  • #1: [CHART TYPE]にBarを指定
  • #2: グラフの表示方向にDisplay verticalを指定
  • #3: 棒グラフの積み上げ形式にNo stackingを指定
  • #4: X軸(X-AXIS)にCountryを指定
  • #5: Y軸(Y-AXIS)にFY23 Targets'、FY23 Forecasts`を指定

このグラフに、Y軸(Y-AXIS)へGrowth Adjustmentを追加します。

現状この項目値はすべて0ですが、Input tablesでこの項目を活用したいと思います。やりたいことは『FY23の予測』です。これが出来ると、Paulaは小さなパーセンテージの増加(または減少)が国別予測にどのように影響するかを迅速に確認できます。この新しい列の数式を次のように設定します。

[FY23 Forecasts] + ([Growth Adjustment] * [FY23 Forecasts])

新しい指標(赤いやつ)が棒グラフとして追加表示されるようになりました。

そういえば忘れてましたが、テーブルデータについて先程設定を行ったGrowth Adjustmentのフォーマットを『パーセンテージ表示』としておいてください。

彼女はAustlia行のFY23 forecastの値を$74,655に戻し、成長率を50%に調整しました。
するとグラフの内容もリアルタイムで置き換わり、変更をその場で確認することが出来ました。


SigmaのInput tables機能により、自担当地域の現在の予測と次年度の予測を確認するだけでなく、実際の変更に応じて予測を更新したり、重要な意思決定をリアルタイムで行うための「仮定分析」を実施することが出来ました。

コーポレートガバナンスは維持しながらソースデータは変更されず、Input tablesとその値を含むすべてのデータが企業のクラウドデータウェアハウスに保存される形で、ユーザーのやりたいことを実現出来ていることが確認出来ました。

まとめ

というわけで、Sigma(Sigma Computing)におけるInput tablesを活用したユースケースの実践シリーズ『予測調整(Forecast Adjustment)』の紹介でした。このような形で実際にありそうなケースを想定して進めていくのを試してみるとイメージも湧きやすくなりますね。

この後もこんな感じでInput tablesに関する実践内容をお届けしていきます。

truestarテックブログ
設定によりコメント欄が無効化されています