Alteryxでセグメンテーションをしてみる #alteryx #25 | Alteryx Advent Calendar 2016

alteryx

こんにちは、DI部の川崎です。

当エントリは「Alteyx Advent Calendar 2016」の最終日のエントリです。

今回は顧客セグメンテーションをAlteryxで行ってみます。

Alteryxで顧客セグメンテーションのサンプルを実行する

[Help]-[Sample Workflows]-[Tableau Starter Kit]-[Data Preparation]-[Customer Segmentation] を開きます。

サンプルの実行結果は、Tableauから確認できるように構成されています。

ワークフロー全体は、次のような構成になっています。2つのInputDataからデータを読み込みます。(トランザクションデータ、顧客属性データ)そのうち、トランザクションデータについて、Summarizeツールで2つの変数(「AVG_SPEND」「STORE VISITS」)を集計、Tileツールでセグメンテーションを行い、Formulaで「LOW」「MED」「HIGH」の値に変換します。Joinツールで2つのデータを統合し、さらに最初に読み込んだ顧客属性データとJoinします。最後にOutput Tableau Workbookツールで、Tableauのワークブックとして出力します。

WS000000_workflow

各ツールについて

Input Dataツール

Input Dataツールでは、下記の2種類のデータを読み込みます。

WS000034_InputData

トランザクションデータの読み込み設定は、次のようになっています。列には金額、日付と顧客IDが含まれています。

WS000017_data1

顧客属性データの読み込み設定は、次のようになっています。全部で11列のデータです。顧客属性データはワークフローの最後の方でJoinされ、Tableauの中で可視化されています。

WS000018_data2

このうち「MOSAIC HOUSEHOLD」については、下記の英国エクスペリアン社による消費者セグメンテーションデータ「Mosaic」による分類結果(19グループ、71セグメント)が保存されています。

Mosaic Groups
 https://www.experian.com/assets/marketing-services/product-sheets/mosaic-usa.pdf

Summarizeツール

Summarizeツールでは、トランザクションデータを基に「TOTAL_SPEND」「AVG_SPEND」「STORE_VISITS」の3つの集計が行われています。このうち「AVG_SPEND」「STORE VISITS」の2つを使い、後続のセグメンテーションが行われます。

WS000017_summarize1

WS000015_summarize

WS000015_summarize_result

Tileツール

Tileツールは、値を範囲に分割するツールで、Tileメソッドとして「Equal Sum」「Equal Records」「Smart Tile」「Unique Value」「Manual」の5つの選択肢が選べるようになっています。今回は「Smart Tile」を選択して、標準偏差を基にした分割を行っています。

WS000020_tile1

WS000013_tile

Tile Toolのヘルプページ
 https://help.alteryx.com/10.6/Tile.htm
User Question: How Does the Smart Tile Feature Work?
 https://community.alteryx.com/t5/Alteryx-Knowledge-Base/User-Question-How-Does-the-Smart-Tile-Feature-Work/ta-p/1174
 → こちらに、先日来日されたChadさんによる「Smart Tile」の解説記事がありました。

Formulaツール

続いて、Formulaツールを使い、Tileツールの結果を整形しています。Tileツールでは、平均値に近い範囲が0、それより下の範囲がマイナスの整数、上の範囲がプラスの整数として出力されますので、それぞれ「MED」「LOW」「HIGH」の3つの値に変換します。

WS000022_formula1

WS000021_formula2

Joinツール

1つ目のJoinツールで、「AVG_SPEND」「STORE VISITS」の2系統に分かれていたフローを1つにまとめます。顧客IDをキーにJoinを行います。ツールの右側の「L」「J」「R」のうち「J」からの出力が利用されていますので、Inner Joinが行われていることがわかります。SQLで記述するよりも直感的でわかりやすいですね!

WS000024_join11

WS000023_join12

2つ目のJoinツールで、最初に読み込んだ顧客属性データと統合します。今回もJoinの条件は、Inner Joinになっています。

WS000025_join21

WS000026_join22

Output Tableau Workbookツール

ワークフローの最後にある「Output Tableau Workbook」ツールで、Tableauのワークブック、および抽出ファイル(TDE)を出力します。

WS000031

WS000032

Tableauのワークブック、抽出ファイルのパスは、Resultに表示されます。ワークフローの実行結果は次のようになります。

all_result

Tableauで確認する

出力されたワークブックをTableauで開きます。顧客セグメンテーションの結果が確認できました。訪問回数✕購買金額による、3✕3=9個のセグメンテーションに、顧客が分割されています。

顧客属性データを基にした「Mosaic Groups」「Customer Count by ZIP」(郵便番号エリアごとの顧客数)「Household Income」(世帯収入)「Has Children」(子供のいる世帯)の4種類のデータも同じダッシュボードで確認できるようになっています。

tableau_01

最後に

Alteryxを使って、マーケティングのデータ分析でよく行われる、顧客セグメンテーションのサンプルを実行してみました。

「Alteyx Advent Calendar 2016」も本エントリにて無事終了となります。最後までおつきあいいただき、ありがとうございました!

本国アメリカでは、非常に注目度が上がっているソフトウェアですので、本アドベントカレンダーでAlteryxの日本での知名度向上に少しでも貢献できたら幸いです。

14日間のトライアル版もご利用いただけますので、興味を持たれた方はぜひダウンロードをお願いします。

本アドベントカレンダーにご協力いただいた、truestar社のお二方、それから弊社のメンバーも皆様お疲れさまでした!