#15 : Alteryxサンプルワークフロー「需要予測(中編)」- Alteryx & Tableau 連携 Advent Calendar 2018
当エントリは『Alteryx&Tableau連携 Advent Calendar 2018』シリーズの14本目のエントリです。
- Alteryx & Tableau 連携 Advent Calendar 2018 - Qiita
- Alteryx & Tableau 連携 Advent Calendar 2018 | シリーズ | DevelopersIO
当エントリでは、Alteryx Designerの実行ワークフローサンプル「Demand Forecasting(需要予測)」の内容を紹介します。
目次
「本日のテーマ」概要紹介
AlteryxとTableauはそのツール特性から非常に相性が良く、製品間それぞれにパートナー企業としての(特集)ページが設けられています。
本日は、Alteryx Designerの「Sample Workflows」にて展開されている「Tableau Starter Kit」の中で、「Predictive Analytics」配下の「Demand Forecasting(需要予測)」というサンプルワークフローについて見ていきたいと思います。
このワークフローでは、これらのワークフローは、Alteryxの線形回帰ツール(Linear Regression tool)を使用して、「顧客がどのくらいの費用を費やすか予測するにはどうすればよいですか?」という質問に応えるワークフローについての解説を行っています。結果となるデータの出力(Insight/洞察)はTableau Dashboardとして出力されます。
当エントリでは、サンプルワークフローで展開されているコンテンツの中から、線形回帰ツールを行うためのデータ準備パートを見ていきたいと思います。
ワークフローの全体像
サンプルワークフローの全体像は以下となります。
ワークフローを読み解く
このワークフローでは線形回帰ツールを実行するためのデータ準備を行っています。データセットは「ディスプレイネットワークのマーケティングチャネルを分析している電子商取引会社」という想定です。 線形回帰ツールを正しく機能・実行させるには、目標変数と予測変数を含む単一のデータセットを用意しておく必要があります。
このワークフローで用意されているデータセットは以下の3つ。
これらデータセットはワークフローを通じて、目標変数と予測変数を含む単一のデータセットにブレンドされます。目標変数は「顧客がどれ位費用を費やすか」を予測したいのでSalesとします。
このモデルでは予測変数の任意の組み合わせを使用する可能性があります。モデルを構築して評価するまでは、どのような組み合わせが最良か分からないので、複数の予測変数を含める事にします。
まずは1つめの入力データ加工から。製品販売データをインポートし、Select Toolで目標変数として定めるSalesのデータ型をDouble型に変換します。不要なフィールドを削除しておくことで、ワークフローの実行時間が短縮されるので処理に必要ないカラムが判明している場合は取り除いておくと良いでしょう。
このデータには、SKUレベルの販売データのみが存在しています。Summarize Toolを使い、製品毎ではなく注文毎に合計売上を提供します。 OrderIDでデータをグルーピングし、Salesの合計を算出します。分かり易くするために出力項目名はTotalOrderSalesと設定しておきました。
2つ目のデータ、注文属性情報については情報のフィルタリングを行います。今回のワークフローでは、ディスプレイネットワークに起因する注文属性情報のみを扱いたいと考えています。なので、Filter Toolを使い、データをDisplayのみに絞り込みます。
Join Toolを使い、販売製品情報と注文属性情報を結合。OrderIDをキーとして選択し、
オプション指定で重複フィールドの選択解除(Deselect Duplecate Fields)を選択しておきます。
eコマース会社は「顧客の年齢や世帯の情報が売上に与える影響」に興味関心があるため、Select Toolでこれらのフィールドのデータ型を整数型に変更し、線形回帰ツールで使用しやすいようにしておきます。また、ZipCodeフィールドは回帰処理では使用しないため、ここで選択解除しておきます。
データにはAgeという項目があるのですが、幾つかの行にはAgeの値が存在していません。線形回帰ツールでは項目にNULL値が含まれていてはならないため、Filter Toolを使ってこれらのレコードを除外します。
一通り必要な情報が揃いました。顧客情報を追加で結合します。結合条件は先程と同じくCustomer ID、重複フィールドの選択解除の部分も同様です。
結合されたデータは総売上、ディスプレイネットワーク、顧客の情報が含まれる形となります。
出力データとして、Output ToolでAlteryxデータベースファイル(*.yxdb)を指定して準備ステップの完了です。
ワークフローの実行・Tableauワークブックの内容確認
画面右上の「Run」ボタン、または「Control」+「R」のショートカットでワークフローを実行。Alteryxデータベースファイル(*.yxdb)が出力されました。
ファイルを実行し、中身を確認してみます。予測処理に適したデータ内容となっていることが確認出来ました。
まとめ
という訳で、『Alteryx & Tableau 連携 Advent Calendar 2018 』15本目、「Demand Forecasting(需要予測)」中編のご紹介でした。明日のエントリでは準備できたデータを使い、需要予測を実施するワークフローについて見ていきたいと思います。
引き続き、明日もお楽しみに!
- Alteryx & Tableau 連携 Advent Calendar 2018 - Qiita
- Alteryx & Tableau 連携 Advent Calendar 2018 | シリーズ | DevelopersIO
Alteryxの導入なら、クラスメソッドにおまかせください
日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。