SlideShare ist ein Scribd-Unternehmen logo
1 von 47
Downloaden Sie, um offline zu lesen
BigQueryとTableauによる
カスタマージャーニー分析
ゴールとアジェンダ
❖ ゴール
☞ 顧客行動データを「観察」するカスタマージャーニー分析の考え方と手法がわかる。
☞ BigQueryとTableauの特長や、始め方・簡単な使い方がわかる。
❖ アジェンダ
☞ データを「観察」する意味
☞ BigQuery+Tableau環境の準備
☞ カスタマージャーニー分析って?
☞ カスタマージャーニー分析を実践する
☞ おまけ:ColabではじめるPython
1© CROSSHACK, Inc. All Rights Reserved.
データを「観察」する意味
2© CROSSHACK, Inc. All Rights Reserved.
データを「観察」する意味
❖ データは資源、でも貯めているだけでは価値を生まない。
☞ モバイルアプリのアクセスログや店舗での購買履歴など、顧客のあらゆる行動データが収集されています。
☞ 5GやIoTの普及により、今後はさらにビッグデータ化していくことでしょう。
☞ ただ、データは貯めているだけでは何の価値も生みません。分析し、有用な知識を獲得してこそ意味があ
ります。
3
❖ データを「観察」することで、顧客の理解や発見が進む。
☞ 難しい統計手法や機械学習を知らなくてもデータ分析は可能です。その方法の一つが「観察」です。
☞ 顧客の行動データを観察することで、いわゆる「データ分析」以上に理解や発見が進むことがあります。
ただ数字を眺めるだけよりも、顧客の行動の足跡はたくさんのことを教えてくれます。
☞ カスタマージャーニー分析は、その行動データ観察を効率的に行うためのフレームワークです。
© CROSSHACK, Inc. All Rights Reserved.
BigQuery+Tableau環境の準備
4© CROSSHACK, Inc. All Rights Reserved.
BigQuery+Tableau環境の全体イメージ
❖ 全体イメージ
5
☞ データ可視化
ü Tableau Desktop
ü Tableau Public
ü Google BigQuery
☞ データ準備/集計 ☞ データマイニング/機械学習
ü Google Cloud Datalab
ü Google Colab
© CROSSHACK, Inc. All Rights Reserved.
BigQuery+Tableauを選ぶ理由
❖ BigQueryを選ぶ4つの理由
☞ 標準SQL対応で汎用性に優れる。
☞ 列指向の格納方式により、大量データの集計に優れる。
☞ ブラウザUIのクエリ実行環境で、いつでもどこでも分析ができる。
☞ クエリごとの従量課金で、アドホックな分析に向いている。
6
❖ Tableauを選ぶ4つの理由
☞ データの可視化(グラフ描画)が非常に簡単。
☞ 集計方法や計算式を一元管理することが可能。
☞ BigQueryなどのさまざまなデータソースとのシームレスな連携が可能。
☞ 作成したレポートの共有が簡単。(Tableau Online)
© CROSSHACK, Inc. All Rights Reserved.
BigQueryを準備する[1/4]
❖ GCP(Google Cloud Platform)アカウントを開設
☞ GCPコンソールにアクセスします。 ※「Google Cloud」で検索
☞ GCPには12ヶ月間300ドル分の無料トライアルがあります。(2019年2月現在)「有効化」をクリック
して、クレジットカードを登録すれば、無料トライアルを開始できます。なお、無料トライアル終了後に
自動的にクレジットカード課金されることはないので安心して利用できます。
☞ GCPにはプロジェクト(Project)という特徴的な概念があります。練習用にはデフォルト設定されてい
る「My First Project」で問題ありません。
7© CROSSHACK, Inc. All Rights Reserved.
BigQueryを準備する[2/4]
❖ GCS(Google Cloud Storage)にデータソースをアップ
☞ データソースの3つのファイルをダウンロード。
☞ GCPコンソールの左上のハンバーガーメニューから「Storage」をクリック。
☞ 「バケットを作成」をクリックし、任意の名前をつけて作成。
☞ バケット内に入り、ダウンロードしファイルをドラック&ドロップ。
8
データソース 変数 ダウンロード
会員マスタ:mst_members 会員ID, 年齢, 性別, 居住地など [↓]105MB
商品マスタ:mst_products 商品ID, 商品カテゴリなど [↓]53MB
購買履歴:trx_orders 会員ID, 商品ID, 注文日, 価格 [↓]698MB
© CROSSHACK, Inc. All Rights Reserved.
BigQueryを準備する[3/4]
❖ BigQueryのデータセット・テーブルを作成
☞ GCPコンソールの左上のハンバーガーメニューから「BigQuery」をクリック。
☞ 「データセットを作成」をクリックし、任意の名前(ここでは「DE」)をつけてデータセットを作成。
☞ 作成したデータセットを選択し、「テーブルを作成」をクリック。
☞ 以下の手順で、GCSにアップした3つのデータソースを取り込んでテーブルを作成。
1. 「テーブルの作成元」で「Google Cloud Storage」を選択
2. 「GCS バケットからファイルを選択」でファイルを選択
3. 「ファイル形式」で「CSV」を選択
4. 「テーブル名」に任意のテーブル名を入力(mst_members, mst_products, trx_orders)
5. 「スキーマと入力パラメータ」にチェック
6. 「詳細オプション」のアコーディオンを開く
7. 「スキップするヘッダー行」に「1」を入力
8. 「テーブルを作成」ボタンをクリック
9© CROSSHACK, Inc. All Rights Reserved.
BigQueryを準備する[4/4]
❖ クエリを実行
☞ クエリエディタにSQL文を入力し、青い「実行」ボタンをクリック。
10
SELECT
member_id
,gender
,age
FROM DE.mst_members
LIMIT 1000
© CROSSHACK, Inc. All Rights Reserved.
Tableauを準備する[1/2]
❖ Tableau Publicを準備
☞ Tableau Publicは、Tableau Desktopと同等の機能と操作性をもつ無料のソフトウェアです。
☞ オープンデータの分析をTableauユーザー間で協業あるいは競争することを目的としたものであり、企業
や個人の持つ秘匿性の高いデータの分析には向いていません。とはいえ、サンプルデータを前提としたト
レーニング用として利用することは可能です。
☞ Tableau Publicのサイトからダウンロードしてインストールします。
11© CROSSHACK, Inc. All Rights Reserved.
Tableauを準備する[2/2]
❖ データを可視化
☞ [接続]の「テキスト ファイル」をクリックし、ファイル「mst_members.csv」を選択。
☞ 画面下部で「シート1」を選択し、性年代別の会員数をグラフで描画。
12© CROSSHACK, Inc. All Rights Reserved.
参考サイト:BigQuery+Tableau
❖ BigQuery
☞ BigQuery vs. Redshift どっち?
☞ BigQueryではじめるSQL #01
☞ BigQueryではじめるSQL #02
☞ BigQueryではじめるSQL #03
☞ BigQueryではじめるSQL #04
13
❖ Tableau
☞ Tableau vs. Excel どっち?
☞ TableauではじめるBI #01
☞ TableauではじめるBI #02
☞ TableauではじめるBI #03
☞ TableauではじめるBI #04
© CROSSHACK, Inc. All Rights Reserved.
カスタマージャーニー分析とは?
14© CROSSHACK, Inc. All Rights Reserved.
カスタマージャーニー分析とは?
❖ 一人ひとりの行動データを観察することで、カスタマーの典型的な行動パターンを理解し、可視
化するフレームワークです。
❖ これにより、ファクトとデータに基づくカスタマージャーニーを描くことができ、PDCAが可能
な実効性の高いマーケティング施策の策定が可能となります。
15© CROSSHACK, Inc. All Rights Reserved.
カスタマージャーニー分析のプロセス[1/2]
❖ STEP1:分析の背景の整理と目的の明確化
☞ データ分析に限らず、何らかの課題解決をするには、まずその背景を整理し、目的を明確化する必要が
あります。当たり前の話ですが、失敗するデータ分析の多くは、ここをあいまいにしたまま、とにかく何
らかの有用な知識を獲得したいという思いのみで行われており、時間とコストを浪費する結果となって
います。
❖ STEP2:データ準備と基礎分析
☞ データは「存在する」状態と「分析できる」状態では全く異なります。そして多くのデータは分析するこ
とを目的に収集されておらず、そもそも構造化されていない、あるいは欠損・異常値・表記揺れ(同義
だが異句の状態)を含むこともあります。それらを加工し「分析できる」状態にすることをデータ準備
(Data Preparation)といいます。
☞ あまねく全てのデータを準備することはできないため、必然的に選択が行われ、偏りが必ず発生します。
これを選択バイアス(Selection Bias)といいます。データの全体像を俯瞰して分布と偏りを把握し、
分析を進める上での前提条件として捉えておくことが重要です。その作業を基礎分析(Basic
Analysis)といいます。
16© CROSSHACK, Inc. All Rights Reserved.
カスタマージャーニー分析のプロセス[2/2]
❖ STEP3:カスタマーの分類と選定
☞ すべてのユーザーの行動を観察するわけには行きません。そこで、似たユーザーをセグメント
(Segment)に分類し、観察すべきセグメントを選定します。
❖ STEP4:カスタマーの行動を観察
☞ 観察すべきセグメントから数名のカスタマーを抽出し、一人ひとりの行動データをミクロ視点で観察し、
何人かに共通して見られる典型的な行動パターンを分析します。
❖ STEP5:カスタマーの代表性の検証
☞ 行動観察から捉えた行動パターンは、観察したその数名にのみ見られるものかもしれません。そこで代表
性の検証をします。
17© CROSSHACK, Inc. All Rights Reserved.
参考サイト:カスタマージャーニー分析
❖ カスタマージャーニー分析(データエスノグラフィ)
☞ データエスノグラフィって?
☞ データエスノグラフィ入門 #01
☞ データエスノグラフィ入門 #02
☞ データエスノグラフィ入門 #03
☞ データエスノグラフィ入門 #04
18© CROSSHACK, Inc. All Rights Reserved.
カスタマージャーニー分析を実践する
19© CROSSHACK, Inc. All Rights Reserved.
STEP1:分析の背景の整理と目的の明確化[1/3]
❖ 背景の整理
☞ あなたは、とある総合ECサイトの責任者です。
☞ ECサイトでは、F2転換率が重要であると言われています。
☞ 「F」は購買頻度(Frequency)のことで、F2転換率とは初回購買から二回目購買への転換率
(Conversion Rate)を意味します。一般的に、新規会員の獲得よりも、既存会員のリピート購買促進
のほうがコスト効率が高いため、F2転換率は重要な指標となります。
☞ とはいえF2転換した会員が、その後も継続的に購買してくれる、いわゆる優良会員になるとは限りません。
20
❖ 目的の明確化
☞ 分析の目的を「優良化する会員の行動特性を、購買履歴データの観察から把握する」とします。
☞ そこには、まだ優良化していない会員を意図的に優良化するためのヒントがあるはず。
© CROSSHACK, Inc. All Rights Reserved.
STEP1:分析の背景の整理と目的の明確化[2/3]
❖ 分析対象データ
☞ とある総合ECサイトの会員の購買履歴データで、概要は以下のとおりです。
• 種類:総合ECサイトの会員の購買履歴
• 期間:2005年1月∼2013年12月(9年間)
• 会員数:639,777人
• 購買数:7,599,650件(平均11.9件/人)
☞ データソースは以下の3つを使用します。
21
データソース 変数 ダウンロード
会員マスタ:mst_members 会員ID, 年齢, 性別, 居住地など [↓]105MB
商品マスタ:mst_products 商品ID, 商品カテゴリなど [↓]53MB
購買履歴:trx_orders 会員ID, 商品ID, 注文日, 価格 [↓]698MB
© CROSSHACK, Inc. All Rights Reserved.
STEP1:分析の背景の整理と目的の明確化[3/3]
❖ データをBigQueryに投入
☞ まずはこれらのデータをBigQueryに投入します。
22© CROSSHACK, Inc. All Rights Reserved.
STEP2:データ準備と基礎分析[1/2]
❖ データ準備
☞ データ準備(Data Preparation)とは、データを分析可能な状態にすることを指します。
☞ データが分析可能とはどういう状態でしょうか。以下の三つのポイントで整理します。
1. 分析目的の達成に必要なデータが っている
2. 分析しやすいよう構造化されている
3. 分析を妨げる欠損・異常値・表記揺れがない
23
気をつけよう、欠損・異常値・表記揺れ
ü ECサイトなどの会員の情報は会員登録時に入力するものですが、一部が任意となっていることがあり、入力されない場
合は欠損となります。
ü 年齢は会員登録時に入力された生年月日から割り出すことが多いですが、いい加減な情報が入力されてしまい、「2歳」
のような常識ではありえない異常値が混入することもあります。
ü 住所の市区町村より以下はフリーテキストで入力されることが多く、同じ市区町村を表すものでも表記が異なる、いわゆ
る表記揺れが発生する場合があります。
© CROSSHACK, Inc. All Rights Reserved.
STEP2:データ準備と基礎分析[2/2]
❖ 基礎分析 = 選択バイアスの回避
☞ 基礎分析(Basic Analysis)とは、データの全体像を俯瞰して分布と偏りを把握することをいいますが、
その主な目的は選択バイアスの回避です。
☞ 選択バイアス(Selection Bias)とは、分析対象として選ばれたものと選ばれなかったものの間に見られ
る特性の差により生ずる系統誤差をいいます。すべてのデータを分析対象にできない上に、そもそもデー
タとして存在しないものもあるため、大なり小なり必ず発生します。
☞ 例えば、プリペイドカードの購買履歴には、カードの入金額の上限を超える高額商品の購買履歴が含まれ
ていません。
24
❖ 選択バイアス回避のポイント
☞ 既知の分布との違い
☞ 時系列データの開始と終了の問題
© CROSSHACK, Inc. All Rights Reserved.
STEP3:カスタマーの分類と選定[1/5]
❖ 分類と選定
☞ すべてのカスタマーの行動を観察するわけには行きません。
☞ 似たカスタマーをセグメント(Segment)に分類し、観察すべきセグメントを選定する必要があります。
25
❖ 観察すべきセグメントは誰?
☞ 分析目的は「優良化する会員の行動特性を、購買履歴データの観察から把握する」
☞ 優良化の要因となる行動特性を把握するには、優良化している会員と優良化していない会員との間に存在
する違いを比較観察すればよい。
☞ とはいえ優良かどうかのみでは範囲が広すぎるため、優良化との相関が強いサブセグメントを見つける。
• 例.高齢者ほど優良化しやすい → 高齢者の中で、優良会員と非優良会員の行動を比較する
© CROSSHACK, Inc. All Rights Reserved.
STEP3:カスタマーの分類と選定[2/5]
❖ 二つの分類軸
☞ 優良会員と非優良会員のセグメント
☞ 優良化との相関が強いサブセグメント
26
❖ 会員ランクの定義(優良会員と非優良会員)
会員ランク 条件
1 優良 購買頻度が30日以上、かつ累積購買金額が10万円以上
2 F3 購買頻度が3日以上、かつ優良会員の条件に満たない
3 F2 購買頻度が2日
4 F1 購買頻度が1日
© CROSSHACK, Inc. All Rights Reserved.
STEP3:カスタマーの分類と選定[3/5]
❖ 優良化との相関が強いサブセグメントを探る
☞ 検証的アプローチ(相関分析)
• 二つの事象間の相関の存在が仮説として想定されるものについて事実を検証していくアプローチです。
• 今回の場合でいうと、特定の性別や年代、あるいは購買商品カテゴリなどの変数と優良化との間に相関
があるのではないかという仮説をたてて検証していきます。
• 事象間の相関をクロス集計(Cross Tabulation)や散布図(Scatter Plot)などを用いて分析します。
☞ 発見的アプローチ(データマイニング/機械学習)
• 多くの変数をもつデータから、二つの事象間の相関を機械的に取り出すアプローチです。
• 主な手法は、アソシエーション分析(Association Analytics)やクラスタリング(Clustering)など。
27
今回は検証的アプローチのみで探る
© CROSSHACK, Inc. All Rights Reserved.
STEP3:カスタマーの分類と選定[4/5]
28
❖ 分析用テーブルの作成(BigQuery)
☞ 検証したいのは、特定の性別・年代・購買商品カテゴリと会員ランクの間の相関です。
☞ 会員IDごとに性別・年代・購買商品カテゴリ・会員ランクの変数をもつテーブルを作成します。
SELECT
mem.member_id
,ANY_VALUE(gender) AS gender
,ANY_VALUE(age) AS age
,ANY_VALUE(category_jp) AS category
,MIN(order_date) AS first_date
,MAX(order_date) AS last_date
,COUNTIF(order_no_day = 1) AS frequency
,SUM(price) AS monetary
,CASE
WHEN COUNTIF(order_no_day = 1) < 2 THEN '4: F1
WHEN COUNTIF(order_no_day = 1) = 2 THEN '3: F2
WHEN COUNTIF(order_no_day = 1) >= 10 AND SUM(price) >= 100000 THEN '1: 優良
ELSE '2: F3' END AS rank
FROM(
SELECT
* EXCEPT(order_date)
,CAST(order_date AS DATE) AS order_date
,ROW_NUMBER() OVER(PARTITION BY member_id ORDER BY order_date ASC) AS order_no
,ROW_NUMBER() OVER(PARTITION BY member_id, TIMESTAMP_TRUNC(order_date, DAY)
ORDER BY order_date ASC) AS order_no_day
FROM DE.trx_orders
) AS ord
JOIN DE.mst_members AS mem
ON ord.member_id = mem.member_id
JOIN DE.mst_products AS prd
ON ord.product_id = prd.product_id
GROUP BY mem.member_id
HAVING
MOD(mem.member_id, 10) = 0 --[※1]
AND gender IS NOT NULL --[※2]
AND age >= 10 AND age < 90 --[※3]
AND first_date >= '2006-01-01' AND last_date < '2013-01-01' --[※4]
処理の効率化のために10%のサンプリングをしていますが[※1]、これは会員IDを10で割った剰余が0の場
合に限定するという意味です。
欠損を除外するために性別がNULLでない会員に限定し[※2]、年齢の異常値を除外するために10歳以上
90歳未満の会員に限定しています[※3]。
時系列データの開始と終了の問題を解決するために、初回購買日が2006年1月以後かつ最終購買日が2012年
12月以前の会員に限定しています[※4]。
→ サンプルコード(Gist)
© CROSSHACK, Inc. All Rights Reserved.
STEP3:カスタマーの分類と選定[5/5]
❖ 検証的アプローチ(相関分析)
☞ 性別・年齢・購買商品カテゴリと会員ランクの関係をTableauで可視化して分析します。
☞ どの切り口でもほぼ同じで、性別・年齢・購買商品カテゴリは、会員の優良化に対して何の影響も及ぼし
ていないことがわかります
☞ 優良化との相関が強いサブセグメントを特定することは難しそうです。
29
性別会員ランク構成比率 年代別会員ランク構成比率 購入商品カテゴリ別会員ランク構成比率
© CROSSHACK, Inc. All Rights Reserved.
STEP4:カスタマーの行動を観察[1/6]
❖ 分析用テーブルの作成(BigQuery)
☞ 観察したいのは一人ひとりの購買履歴になります。
☞ 購買履歴ごとの行を持つテーブルを作成します。
30
WITH sum_orders AS (
SELECT
* EXCEPT(order_date)
,CAST(order_date AS DATE) AS order_date
,ROW_NUMBER() OVER(PARTITION BY member_id ORDER BY order_date ASC) AS order_no
,ROW_NUMBER() OVER(PARTITION BY member_id, TIMESTAMP_TRUNC(order_date, DAY)
ORDER BY order_date ASC) AS order_no_day
FROM DE.trx_orders
)
,sum_members_rfm AS (
SELECT
member_id
,MIN(order_date) AS first_date
,MAX(order_date) AS last_date
,COUNTIF(order_no_day = 1) AS frequency
,SUM(price) AS monetary
,CASE
WHEN COUNTIF(order_no_day = 1) < 2 THEN '4: F1
WHEN COUNTIF(order_no_day = 1) = 2 THEN '3: F2
WHEN COUNTIF(order_no_day = 1) >= 10 AND SUM(price) >= 100000 THEN '1: 優良
ELSE '2: F3' END AS rank
FROM sum_orders
GROUP BY member_id
)
SELECT
mem.member_id AS A00_member_id
,gender AS A01_gender
,age AS A02_age
,order_no AS B00_order_no
,order_date AS B01_order_date
,prd.category_jp AS B02_category
,prd.sub_category_jp AS B03_sub_category
,price AS B04_price
,rank AS C00_rank
,frequency AS C01_frequency
,monetary AS C02_monetary
FROM sum_orders AS ord
JOIN sum_members_rfm AS rfm
ON ord.member_id = rfm.member_id
JOIN DE.mst_members AS mem
ON ord.member_id = mem.member_id
JOIN DE.mst_products AS prd
ON ord.product_id = prd.product_id
WHERE
MOD(mem.member_id, 10) = 0
AND gender IS NOT NULL
AND age >= 10 AND age < 90
AND first_date >= '2006-01-01' AND last_date < '2013-01-01'
ORDER BY A00_member_id, B00_order_no → サンプルコード(Gist)
© CROSSHACK, Inc. All Rights Reserved.
STEP4:カスタマーの行動を観察[2/6]
❖ データ観察環境の構築(Tableau)
31© CROSSHACK, Inc. All Rights Reserved.
STEP4:カスタマーの行動を観察[3/6]
❖ 行動観察: F1会員
☞ 当たり前ですが、F1会員は初回購買の購買履歴しかありません。
32
❖ 行動観察: F2会員
☞ 初回購買から二回目購買までの期間が何ヶ月も空いている会員が意外と多い印象。
© CROSSHACK, Inc. All Rights Reserved.
STEP4:カスタマーの行動を観察[4/6]
❖ 行動観察: F3会員
☞ 初回購買から二回目購買までの期間が長い会員が多い。
☞ 3回目購買から定着化し、比較的コンスタントに購入していることがわかります。
33© CROSSHACK, Inc. All Rights Reserved.
STEP4:カスタマーの行動を観察[5/6]
❖ 行動観察: 優良会員
☞ 初回購買から二回目購買までの期間が長い会員が多い。
☞ 3回目購買から定着化し、比較的コンスタントに購入している。
☞ 優良会員は比較的多くの商品カテゴリを購買している。
34© CROSSHACK, Inc. All Rights Reserved.
STEP4:カスタマーの行動を観察[6/6]
❖ 行動データ観察を通して浮かび上がる二つの仮説
☞ 初回購買後に休眠化した会員についても優良化するポテンシャルがあるのではないか。
☞ 新たな商品カテゴリを提案することが優良化につながる可能性があるのではないか。
35
❖ この仮説検証に意味はあるか?
☞ これらの仮説をもとに、データの深掘分析やA/Bテストによる実証実験を行うことで、まだ優良化してい
な会員を意図的に優良化するためのヒントが得られる可能性があります。
☞ 一方で、観察した一部の会員だけに見られる特徴である可能性も否定できず、もしそうなら、この仮説の
検証に意味はありません。
☞ そこで代表性の検証を行います。
© CROSSHACK, Inc. All Rights Reserved.
STEP5:カスタマーの代表性の検証[1/3]
❖ 分析用テーブルの作成(BigQuery)
36
WITH sum_orders AS (
SELECT
* EXCEPT(order_date)
,CAST(order_date AS DATE) AS order_date
,ROW_NUMBER() OVER(PARTITION BY member_id ORDER BY order_date ASC) AS order_no
,ROW_NUMBER() OVER(PARTITION BY member_id, TIMESTAMP_TRUNC(order_date, DAY)
ORDER BY order_date ASC) AS order_no_day
FROM DE.trx_orders
)
,sum_members_repeat AS (
SELECT
member_id
,order_date AS second_date
FROM (
SELECT
member_id
,order_date
,ROW_NUMBER() OVER(PARTITION BY member_id ORDER BY order_date ASC) AS order_day_no
FROM sum_orders
GROUP BY member_id, order_date
)
WHERE order_day_no = 2
)
,sum_members_category AS (
SELECT
member_id
,count(*) AS num_category
FROM (
SELECT
member_id
,ROW_NUMBER() OVER(PARTITION BY member_id, category ORDER BY order_date ASC) AS
order_no_category
FROM sum_orders AS ord
JOIN DE.mst_products AS prd
ON ord.product_id = prd.product_id
)
WHERE order_no_category = 1
GROUP BY member_id
)
SELECT
mem.member_id
,ANY_VALUE(gender) AS gender
,ANY_VALUE(age) AS age
,MIN(order_date) AS first_date
,MAX(order_date) AS last_date
,CASE
WHEN COUNTIF(order_no_day = 1) < 2 THEN '4: F1
WHEN COUNTIF(order_no_day = 1) = 2 THEN '3: F2
WHEN COUNTIF(order_no_day = 1) >= 10 AND SUM(price) >= 100000 THEN '1: 優良
ELSE '2: F3' END AS rank
,IF(COUNTIF(order_no_day = 1) > 1, DATE_DIFF(ANY_VALUE(second_date), MIN(order_date), DAY), NULL)
AS blank_days
,ANY_VALUE(num_category) AS category_num
FROM sum_orders AS ord
LEFT JOIN sum_members_repeat AS rep
ON ord.member_id = rep.member_id
LEFT JOIN sum_members_category AS cat
ON ord.member_id = cat.member_id
JOIN DE.mst_members AS mem
ON ord.member_id = mem.member_id
JOIN DE.mst_products AS prd
ON ord.product_id = prd.product_id
GROUP BY mem.member_id
HAVING
MOD(mem.member_id, 10) = 0
AND gender IS NOT NULL
AND age >= 10 AND age < 90 AND first_date >= '2006-01-01' AND last_date < '2013-01-01'
→ サンプルコード(Gist)
© CROSSHACK, Inc. All Rights Reserved.
STEP5:カスタマーの代表性の検証[2/3]
❖ 初回購買後に休眠化した会員についても優良化するポテンシャルがあるのではないか。
☞ 結果
• 休眠会員(初回購買から91日以上購買がない会員):78.6%
• そのまま離反する会員:64.7%(休眠会員の82.3%)
• 復帰してF2転換する会員:13.9%(休眠会員の17.7%)
• 復帰してF3転換する会員:7.7%(休眠会員の9.8%)
☞ 考察
• 初回購買から91日以上購買がない会員を休眠会員とすると、80%近くが休眠会員となるものの、そのうちの20%近く
が復帰し、10%近くがF3転換していることになります。
• 休眠期間が長くなるほど優良化率が下がるため、早いタイミングでの復帰促進が望ましいといえます。(右上図参照)
37
休眠期間別会員ランク構成比率
© CROSSHACK, Inc. All Rights Reserved.
STEP5:カスタマーの代表性の検証[3/3]
❖ 新たな商品カテゴリを提案することが優良化につながる可能性があるのではないか。
☞ 考察
• 購買商品カテゴリ数と優良化には明らかな相関があることがわかります。(下図参照)
• 購買商品カテゴリ数を優良化との相関が強いサブセグメントに指定し、8以上に絞って、改めて行動データ観察をする
のもよいでしょう。
38
購買商品カテゴリ数別会員ランク構成比率
© CROSSHACK, Inc. All Rights Reserved.
おまけ:ColabではじめるPython
39© CROSSHACK, Inc. All Rights Reserved.
ColabでPythonの理由
40
❖ Pythonを選ぶ4つの理由
☞ 実行速度は相対的に速い(Rと比べて)
☞ プログラミング言語としての完成度が高く、汎用性と可読性に優れる
☞ 機械学習系ライブラリが非常に充実している(scikit-learn、TensorFlow、PyTorchなど)
☞ クラウドでの実行環境が存在する(Google Cloud Datalab、Google Colabなど)
❖ Colabを選ぶ5つの理由
☞ インストール不要で、無料で利用可能。※ Googleが機械学習の教育や研究のために無償提供
☞ 対話式プログラム実行環境で、非常に手軽。
☞ 機械学習系のメジャーなライブラリがインストール済み。(追加インストールも可能)
☞ GitHubおよびGistとの連携が簡単。
☞ クラウドの高性能なCPU・GPU・TPUを利用可能。
© CROSSHACK, Inc. All Rights Reserved.
Colabを使ってみる
❖ Google Colabにアクセス
☞ Google Colabにアクセス ※「Google Colab」で検索
☞ メインメニューの「ファイル」から「Python 3 の新しいノート
ブック」を選択
41
❖ 簡単なプログラムを実行
☞ 入力エリアに「print ( Hello, World! )」と記述し、実行
☞ 入力エリアに「1 + 1」と記述し、実行
© CROSSHACK, Inc. All Rights Reserved.
Colabでデータマイニング[1/3]
42
❖ アソシエーション分析をやってみる
☞ BigQueryで、分析用のテーブルを作成する。
☞ Colabで、BigQueryから分析用テーブルを取り込む。
☞ Colabで、アプリオリ・アルゴリズムの拡張モジュールであるmlxtendを用いて作成したアソシエーショ
ンルールを作成。
☞ 信頼度(Confidence)
• 商品Xを購買した顧客が商品Yも購買する確率
☞ 支持度(Support)
• 全体の購買の中で商品Xと商品Yのどちらも購買される確率
☞ リフト(Lift)
• 全体の購買の中で商品Yが購買される確率に対する、商品X
を購買した顧客が商品Yも購買する確率(信頼度)の割合
© CROSSHACK, Inc. All Rights Reserved.
Colabでデータマイニング[2/3]
43
❖ サンプルコード(Colab)
→ サンプルコード(Gist)
© CROSSHACK, Inc. All Rights Reserved.
Colabでデータマイニング[3/3]
44
❖ 可視化(Tableau)
XとYの項目数が多すぎて
分析できません。
支持度の閾値を0.2に上げると
「エレクトロニクス・コンピューター」
「家庭・ガーデニング用品」「スポーツ・アウトドア」
が他の商品との併売が強いことがわかります。
リフトの閾値を1.3に上げると、
「自動車・工業」のリフトが高く、
他の商品の購買を押し上げる力が強い
ことがわかります。
© CROSSHACK, Inc. All Rights Reserved.
参考サイト:Python
❖ Python
☞ Python vs. R どっち?
☞ ColabではじめるPython #01
☞ ColabではじめるPython #02
☞ ColabではじめるPython #03
☞ ColabではじめるPython #04
45
❖ アソシエーション分析
☞ アソシエーション分析入門 #01
☞ アソシエーション分析入門 #02
☞ アソシエーション分析入門 #03
☞ アソシエーション分析入門 #04
© CROSSHACK, Inc. All Rights Reserved.
ありがとうございました。
46© CROSSHACK, Inc. All Rights Reserved.

Weitere ähnliche Inhalte

Was ist angesagt?

【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたいTakuji Tahara
 
リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方Recruit Lifestyle Co., Ltd.
 
機械学習を用いた異常検知入門
機械学習を用いた異常検知入門機械学習を用いた異常検知入門
機械学習を用いた異常検知入門michiaki ito
 
レコメンド研究のあれこれ
レコメンド研究のあれこれレコメンド研究のあれこれ
レコメンド研究のあれこれMasahiro Sato
 
リクルートのビッグデータ活用基盤とデータ活用に向けた取組み
リクルートのビッグデータ活用基盤とデータ活用に向けた取組みリクルートのビッグデータ活用基盤とデータ活用に向けた取組み
リクルートのビッグデータ活用基盤とデータ活用に向けた取組みRecruit Technologies
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門Shuyo Nakatani
 
相関係数は傾きに影響される
相関係数は傾きに影響される相関係数は傾きに影響される
相関係数は傾きに影響されるMitsuo Shimohata
 
アラート対応自動化を組み込んでみた
アラート対応自動化を組み込んでみたアラート対応自動化を組み込んでみた
アラート対応自動化を組み込んでみたIIJ
 
データサイエンティスト協会スキル委員会2ndシンポジウム講演資料
データサイエンティスト協会スキル委員会2ndシンポジウム講演資料データサイエンティスト協会スキル委員会2ndシンポジウム講演資料
データサイエンティスト協会スキル委員会2ndシンポジウム講演資料The Japan DataScientist Society
 
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明Satoshi Hara
 
DMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメントDMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメントKent Ishizawa
 
データサイエンティストの仕事とデータ分析コンテスト
データサイエンティストの仕事とデータ分析コンテストデータサイエンティストの仕事とデータ分析コンテスト
データサイエンティストの仕事とデータ分析コンテストKen'ichi Matsui
 
合成変量とアンサンブル:回帰森と加法モデルの要点
合成変量とアンサンブル:回帰森と加法モデルの要点合成変量とアンサンブル:回帰森と加法モデルの要点
合成変量とアンサンブル:回帰森と加法モデルの要点Ichigaku Takigawa
 
Tableauから始める統計学の基礎
Tableauから始める統計学の基礎Tableauから始める統計学の基礎
Tableauから始める統計学の基礎Hiroshi Masuda
 
ドライブレコーダの画像認識による道路情報の自動差分抽出
ドライブレコーダの画像認識による道路情報の自動差分抽出ドライブレコーダの画像認識による道路情報の自動差分抽出
ドライブレコーダの画像認識による道路情報の自動差分抽出Tetsutaro Watanabe
 
多変量解析を用いたメタボロームデータ解析
多変量解析を用いたメタボロームデータ解析多変量解析を用いたメタボロームデータ解析
多変量解析を用いたメタボロームデータ解析h_yama2396
 
MLOpsの概要と初学者が気をつけたほうが良いこと
MLOpsの概要と初学者が気をつけたほうが良いことMLOpsの概要と初学者が気をつけたほうが良いこと
MLOpsの概要と初学者が気をつけたほうが良いことSho Tanaka
 

Was ist angesagt? (20)

【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
 
リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方
 
機械学習を用いた異常検知入門
機械学習を用いた異常検知入門機械学習を用いた異常検知入門
機械学習を用いた異常検知入門
 
レコメンド研究のあれこれ
レコメンド研究のあれこれレコメンド研究のあれこれ
レコメンド研究のあれこれ
 
リクルートのビッグデータ活用基盤とデータ活用に向けた取組み
リクルートのビッグデータ活用基盤とデータ活用に向けた取組みリクルートのビッグデータ活用基盤とデータ活用に向けた取組み
リクルートのビッグデータ活用基盤とデータ活用に向けた取組み
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門
 
相関係数は傾きに影響される
相関係数は傾きに影響される相関係数は傾きに影響される
相関係数は傾きに影響される
 
アラート対応自動化を組み込んでみた
アラート対応自動化を組み込んでみたアラート対応自動化を組み込んでみた
アラート対応自動化を組み込んでみた
 
データサイエンティスト協会スキル委員会2ndシンポジウム講演資料
データサイエンティスト協会スキル委員会2ndシンポジウム講演資料データサイエンティスト協会スキル委員会2ndシンポジウム講演資料
データサイエンティスト協会スキル委員会2ndシンポジウム講演資料
 
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明
 
DMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメントDMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメント
 
データサイエンティストの仕事とデータ分析コンテスト
データサイエンティストの仕事とデータ分析コンテストデータサイエンティストの仕事とデータ分析コンテスト
データサイエンティストの仕事とデータ分析コンテスト
 
合成変量とアンサンブル:回帰森と加法モデルの要点
合成変量とアンサンブル:回帰森と加法モデルの要点合成変量とアンサンブル:回帰森と加法モデルの要点
合成変量とアンサンブル:回帰森と加法モデルの要点
 
Tableauから始める統計学の基礎
Tableauから始める統計学の基礎Tableauから始める統計学の基礎
Tableauから始める統計学の基礎
 
ドライブレコーダの画像認識による道路情報の自動差分抽出
ドライブレコーダの画像認識による道路情報の自動差分抽出ドライブレコーダの画像認識による道路情報の自動差分抽出
ドライブレコーダの画像認識による道路情報の自動差分抽出
 
戦略的プレゼン資料作成講座
戦略的プレゼン資料作成講座戦略的プレゼン資料作成講座
戦略的プレゼン資料作成講座
 
Tableau LOD calculation
Tableau LOD calculation Tableau LOD calculation
Tableau LOD calculation
 
多変量解析を用いたメタボロームデータ解析
多変量解析を用いたメタボロームデータ解析多変量解析を用いたメタボロームデータ解析
多変量解析を用いたメタボロームデータ解析
 
FOBOS
FOBOSFOBOS
FOBOS
 
MLOpsの概要と初学者が気をつけたほうが良いこと
MLOpsの概要と初学者が気をつけたほうが良いことMLOpsの概要と初学者が気をつけたほうが良いこと
MLOpsの概要と初学者が気をつけたほうが良いこと
 

Ähnlich wie BigQueryとTableauによるカスタマージャーニー分析

Tokyo webmining発表資料 20111127
Tokyo webmining発表資料 20111127Tokyo webmining発表資料 20111127
Tokyo webmining発表資料 20111127kan_yukiko
 
カウミープロダクト資料ver.3_株式会社マイクロアド.pptx
カウミープロダクト資料ver.3_株式会社マイクロアド.pptxカウミープロダクト資料ver.3_株式会社マイクロアド.pptx
カウミープロダクト資料ver.3_株式会社マイクロアド.pptxssuser7a8771
 
MAごころを、君に - GA4勉強会 #6 GA4の探索を
MAごころを、君に - GA4勉強会 #6 GA4の探索をMAごころを、君に - GA4勉強会 #6 GA4の探索を
MAごころを、君に - GA4勉強会 #6 GA4の探索をWebpla LLC.
 
45分で理解する_マーケティング・システム入門_斉藤之雄
45分で理解する_マーケティング・システム入門_斉藤之雄45分で理解する_マーケティング・システム入門_斉藤之雄
45分で理解する_マーケティング・システム入門_斉藤之雄Yukio Saito
 
Big data harvardbusiessreview20121112
Big data harvardbusiessreview20121112Big data harvardbusiessreview20121112
Big data harvardbusiessreview20121112Dennis Sugahara
 
コンテンツマーケティングの全体像とイノーバにおけるデータ分析手法のビジネス活用
コンテンツマーケティングの全体像とイノーバにおけるデータ分析手法のビジネス活用コンテンツマーケティングの全体像とイノーバにおけるデータ分析手法のビジネス活用
コンテンツマーケティングの全体像とイノーバにおけるデータ分析手法のビジネス活用智之 村上
 
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)Tokoroten Nakayama
 
Webマーケティングを通じたデータサイエンティストの価値発揮方法
Webマーケティングを通じたデータサイエンティストの価値発揮方法Webマーケティングを通じたデータサイエンティストの価値発揮方法
Webマーケティングを通じたデータサイエンティストの価値発揮方法E2D3.org
 
【Saleshub用】カウミー説明資料-ver4.pdf
【Saleshub用】カウミー説明資料-ver4.pdf【Saleshub用】カウミー説明資料-ver4.pdf
【Saleshub用】カウミー説明資料-ver4.pdfssuser7a8771
 
カスタマーサクセスのためのデータ整備人の活動記録
カスタマーサクセスのためのデータ整備人の活動記録カスタマーサクセスのためのデータ整備人の活動記録
カスタマーサクセスのためのデータ整備人の活動記録syou6162
 
Big data解析ビジネス
Big data解析ビジネスBig data解析ビジネス
Big data解析ビジネスMie Mori
 
DataForest_komatsu0510
DataForest_komatsu0510DataForest_komatsu0510
DataForest_komatsu0510komatsuGP
 
ナレッジ共有ベース業務スタイル変革ソリューションKCUBE
ナレッジ共有ベース業務スタイル変革ソリューションKCUBEナレッジ共有ベース業務スタイル変革ソリューションKCUBE
ナレッジ共有ベース業務スタイル変革ソリューションKCUBEErin Kim
 
Webマイニングと情報論的学習理論
Webマイニングと情報論的学習理論Webマイニングと情報論的学習理論
Webマイニングと情報論的学習理論Hiroshi Ono
 
Webマイニングと情報論的学習理論
Webマイニングと情報論的学習理論Webマイニングと情報論的学習理論
Webマイニングと情報論的学習理論Hiroshi Ono
 
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのかTechon Organization
 
【スクー】業務改善のためのデータサイエンス
【スクー】業務改善のためのデータサイエンス【スクー】業務改善のためのデータサイエンス
【スクー】業務改善のためのデータサイエンスIssei Kurahashi
 

Ähnlich wie BigQueryとTableauによるカスタマージャーニー分析 (20)

おしゃスタat銀座
おしゃスタat銀座おしゃスタat銀座
おしゃスタat銀座
 
Tokyo webmining発表資料 20111127
Tokyo webmining発表資料 20111127Tokyo webmining発表資料 20111127
Tokyo webmining発表資料 20111127
 
カウミープロダクト資料ver.3_株式会社マイクロアド.pptx
カウミープロダクト資料ver.3_株式会社マイクロアド.pptxカウミープロダクト資料ver.3_株式会社マイクロアド.pptx
カウミープロダクト資料ver.3_株式会社マイクロアド.pptx
 
MAごころを、君に - GA4勉強会 #6 GA4の探索を
MAごころを、君に - GA4勉強会 #6 GA4の探索をMAごころを、君に - GA4勉強会 #6 GA4の探索を
MAごころを、君に - GA4勉強会 #6 GA4の探索を
 
45分で理解する_マーケティング・システム入門_斉藤之雄
45分で理解する_マーケティング・システム入門_斉藤之雄45分で理解する_マーケティング・システム入門_斉藤之雄
45分で理解する_マーケティング・システム入門_斉藤之雄
 
Big data harvardbusiessreview20121112
Big data harvardbusiessreview20121112Big data harvardbusiessreview20121112
Big data harvardbusiessreview20121112
 
コンテンツマーケティングの全体像とイノーバにおけるデータ分析手法のビジネス活用
コンテンツマーケティングの全体像とイノーバにおけるデータ分析手法のビジネス活用コンテンツマーケティングの全体像とイノーバにおけるデータ分析手法のビジネス活用
コンテンツマーケティングの全体像とイノーバにおけるデータ分析手法のビジネス活用
 
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
 
Webマーケティングを通じたデータサイエンティストの価値発揮方法
Webマーケティングを通じたデータサイエンティストの価値発揮方法Webマーケティングを通じたデータサイエンティストの価値発揮方法
Webマーケティングを通じたデータサイエンティストの価値発揮方法
 
Digital strategy in Japanese
Digital strategy in JapaneseDigital strategy in Japanese
Digital strategy in Japanese
 
【Saleshub用】カウミー説明資料-ver4.pdf
【Saleshub用】カウミー説明資料-ver4.pdf【Saleshub用】カウミー説明資料-ver4.pdf
【Saleshub用】カウミー説明資料-ver4.pdf
 
カスタマーサクセスのためのデータ整備人の活動記録
カスタマーサクセスのためのデータ整備人の活動記録カスタマーサクセスのためのデータ整備人の活動記録
カスタマーサクセスのためのデータ整備人の活動記録
 
福井解析セミナー20140326
福井解析セミナー20140326福井解析セミナー20140326
福井解析セミナー20140326
 
Big data解析ビジネス
Big data解析ビジネスBig data解析ビジネス
Big data解析ビジネス
 
DataForest_komatsu0510
DataForest_komatsu0510DataForest_komatsu0510
DataForest_komatsu0510
 
ナレッジ共有ベース業務スタイル変革ソリューションKCUBE
ナレッジ共有ベース業務スタイル変革ソリューションKCUBEナレッジ共有ベース業務スタイル変革ソリューションKCUBE
ナレッジ共有ベース業務スタイル変革ソリューションKCUBE
 
Webマイニングと情報論的学習理論
Webマイニングと情報論的学習理論Webマイニングと情報論的学習理論
Webマイニングと情報論的学習理論
 
Webマイニングと情報論的学習理論
Webマイニングと情報論的学習理論Webマイニングと情報論的学習理論
Webマイニングと情報論的学習理論
 
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
 
【スクー】業務改善のためのデータサイエンス
【スクー】業務改善のためのデータサイエンス【スクー】業務改善のためのデータサイエンス
【スクー】業務改善のためのデータサイエンス
 

BigQueryとTableauによるカスタマージャーニー分析