Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sales Analysis

Ikuya Murasato
January 23, 2019

Sales Analysis

2019/1/23(水)に開催したExploratory データサイエンス勉強会#8の資料です。

Ikuya Murasato

January 23, 2019
Tweet

More Decks by Ikuya Murasato

Other Decks in Business

Transcript

  1. Sales Analysis
    author: Ikuya Murasato
    date: 2019/01/23
    1 Internal Use Only

    View Slide

  2. gn
    0 C / e
    P
    m rt
    m 1 i
    8 /
    2 Internal Use Only

    View Slide

  3. Agenda
    1. 導入 (テキスト中心です)
    1. 注意事項
    2. 本日のテーマ
    3. データセットについて
    4. 分析を始める前に
    5. Sales Rights
    6. ターゲティングについて
    7. 分析の方針
    3
    2. 可視化・分析
    1. 売上推移確認
    2. 新規・既存割合
    3. 新規・既存顧客の平均単価
    4. 購入回数別売上貢献度
    5. 常連化曲線
    6. 生存分析
    7. クラスタリング
    8. 生存分析 x クラスタリング

    View Slide

  4. o a
    l lp /
    l i E /
    l / V /
    l r t
    /
    lr / i /
    4 Internal Use Only

    View Slide

  5. 本日のテーマ
    売上データを可視化・分析する
    5 Internal Use Only

    View Slide

  6. データセット
    6 Internal Use Only
    BtoBのOutboundビジネス(電話をかけて案件を創出・発掘し、受注につなげる)を
    前提としたデータセットです。後述する3つのデータを使い、顧客の可視化・分
    析を進めます。
    1. 売上データ
    2. 顧客(企業)情報
    3. カレンダー(特殊決算月対応のため)

    View Slide

  7. データセット1 – 売上データ
    変数情報は以下の通り。メインで利用する変数は黒くしています
    • date
    • id
    • district
    • qty
    • product
    • price
    • revenue(qty * price)
    7 Internal Use Only

    View Slide

  8. データセット1 – 売上データ
    変数情報は以下の通り。メインで利用する変数は黒くしています
    • date
    • id
    • district
    • qty
    • product
    • price
    • revenue(qty * price)
    8 Internal Use Only

    View Slide

  9. データセット2 – 顧客(企業)情報
    変数情報は以下の通り。メインで利用する変数は黒くしています
    • id
    • hq_prefecture
    • foundation
    • employee
    • business_type
    • customer_type
    9 Internal Use Only

    View Slide

  10. データセット2 – 顧客(企業)情報
    変数情報は以下の通り。メインで利用する変数は黒くしています
    • id
    • hq_prefecture
    • foundation
    • employee
    • business_type
    • customer_type
    10 Internal Use Only

    View Slide

  11. データセット3 – calendar
    変数情報は以下の通り。メインで利用する変数は黒くしています
    • date
    • year
    • month
    • date of week
    • hp_fiscal_year
    • hp_fiscal _quarter
    • general_fiscal_quarter
    • hpfyq
    11 Internal Use Only

    View Slide

  12. データセット3 – calendar
    変数情報は以下の通り。メインで利用する変数は黒くしています
    • date
    • year
    • month
    • date of week
    • hp_fiscal_year
    • hp_fiscal _quarter
    • general_fiscal_quarter
    • hpfyq
    12 Internal Use Only

    View Slide

  13. 以下のような簡単なR Scriptで日付データを作成したら、後はGUIだけで前述の
    カレンダーを簡単に生成できます
    13 Internal Use Only
    データセット3 – calendar

    View Slide

  14. 営業系のデータ分析を始める前に…
    14
    経験上、ターゲット指標(KGI) がどのような指標に因数分解されるか、公式を
    もっておくと良いかと思います
    • 売上 = 架電可能顧客数 x 架電数 x 通話成功率 x 成約率 x 平均単価
    • 売上 = 顧客数 x 有料課金率 x 平均課金額
    • 売上 = 顧客数 x 来店頻度 x 平均購買額
    今回のデータセットでは一番目のモデルに近いので、その辺を念頭に検討を進
    めます。経験上、架電数などの営業量に関連するものはリソースに依存するこ
    とが多く、IT・業務プロセス・組織を変えることで超えていくことが多いので、
    今回は営業量を増やす方向は検討せず、いかに成約率(継続率)をあげるかに注目
    していきます。

    View Slide

  15. SalesのRights
    ではどうすると制約率があがるか?となると様々な考え方があるかと思います。
    使い古されていますが、私は以下が噛み合うことを重要に考えています
    15 Internal Use Only
    • Right Person (適切なターゲットを選定して)
    • Right Place (適切な媒体を通じて)
    • Right Time (適切なタイミングで)
    • Right Message (適切なメッセージング行う)
    ターゲットが定義されると媒体・タイミング・メッセージングが決めやすくな
    ることが多いので、特にデマンド創出・発掘型のビジネスにおいて適切なター
    ゲットを見出していくことは重要な視点の一つになるかと思います。

    View Slide

  16. ターゲティング
    次いでどのようにターゲティングをしていくかとなると、下記によるセグメン
    テーションは引き続き有力な方法の一つかと思います
    16 Internal Use Only
    1. 人口統計的変数(Demographic Variables) …年齢、世帯規模、所得、職業
    2. 地理的変数(Geographic Variables) …地域、都市、人口密度
    3. 心理的変数(Psychographic Variables)…ライフスタイル、パーソナリティ
    4. 行動上の変数(Behavioral Variables)…RFM、利益、Web履歴、メール反応状況
    5. 製品・サービスの属性変数…製品・サービスの品質、性能、サイズ、デザイン

    View Slide

  17. 今回の方針
    今回は1を軸に顧客セグメンテーションを切って分析・可視化を進めます
    17 Internal Use Only
    >1. 人口統計的変数(Demographic Variables)
    >年齢、世帯規模、所得、職業
    今回はB to Bのビジネスが対象となるため存続年数、従業員規模、業態といった切
    り口で見ていきます

    View Slide

  18. 売上推移
    何はなくとも売上と売上顧客数をみていきます
    19 Internal Use Only

    View Slide

  19. 売上推移
    何はなくとも売上と売上顧客数をみていきます
    20 Internal Use Only
    購入顧客数と売上 Point
    ⚫ 上下動はあるものの⻑期ト
    レンドで売上・売上社数共
    に下落傾向にあるよう見え
    ます
    ⚫ FY19Q1はデータが締まって
    いないので 検討対象外とし
    ます(Summary便利ですね)

    View Slide

  20. 売上移動平均推移(区間数=4)
    全体トレンドを理解するために移動平均も見てみます
    21 Internal Use Only
    購入顧客数と売上の移動平均(区間数=4) Point
    ⚫ 移動平均で確認する限り継
    続的なダウントレンドにあ
    ることが想定される
    ⚫ 環境起因
    ⚫ 構造起因

    View Slide

  21. 新規・既存顧客の売上割合
    新規と既存とで獲得戦略が異なることも多いので両者の比率推移を可視化する
    22 Internal Use Only

    View Slide

  22. 新規・既存顧客の売上割合
    新規と既存とで獲得戦略が異なることも多いので両者の比率推移を可視化する
    23 Internal Use Only
    新規顧客数と既存顧客数の比率 Point
    ⚫ 新規率の下落が続いており、
    売上の観点で既存顧客主体
    のビジネスになりつつあり
    ます
    ⚫ 下落傾向ではあるものの新
    規顧客からの売上は毎四半
    期一定数獲得できている。
    それに反して既存顧客の売
    上が積み上がらないのは、
    定着率に問題がある等が想
    定されます

    View Slide

  23. 新規・既存顧客の売上割合(顧客数ベース)
    新規と既存とで獲得戦略が異なることも多いので両者の比率推移を可視化する
    24 Internal Use Only
    新規顧客数と既存顧客数の比率 Point
    ⚫ 売上比率と同様の傾向が見
    受けられる

    View Slide

  24. 新規・既存顧客の 購買単価の推移とT検定
    新規既存で購買データに変化がないか購入単価を比較して確認する
    25 Internal Use Only

    View Slide

  25. 新規・既存顧客の 購買単価の推移とT検定
    新規・既存で購買データに変化がないか購入単価を比較して確認する
    26 Internal Use Only
    新規顧客数と既存顧客数の比率と差について Point
    ⚫ P値の高さから両者の関連性
    を認めることは難しく、新
    規か既存顧客かでOrder per
    valueが解りやすく上昇しな
    いビジネスになっているこ
    とが想定されます

    View Slide

  26. 購入回数別顧客数
    新規と既存顧客の内訳をもう少しドリルダウンしていきます
    27 Internal Use Only

    View Slide

  27. 購入回数別顧客数
    新規と既存顧客の内訳をもう少しドリルダウンしていきます
    28 Internal Use Only
    Point
    ⚫ 新規の比率減は先のvizでも
    確認できましたが、ドリル
    ダウンすることで特定の回
    数以上の購買が激減すると
    いった傾向は見られず、経
    時と共にchurn rateが悪化し
    ているように見える
    ⚫ churn rate がものをいうビジ
    ネス構造になっていること
    がうかがえる
    購入回数別顧客数

    View Slide

  28. 常連化曲線
    生存分析にかける前に一応常連化曲線も確認する
    29 Internal Use Only

    View Slide

  29. 常連化曲線
    生存分析にかける前に一応常連化曲線も確認する
    30 Internal Use Only
    Point
    ⚫ 飲食店の来店分析等で使わ
    れたりするパレートチャー
    ト分析。購買回数がリピー
    トに対して重要な場合有効
    ⚫ サンプル数が少ないことも
    あり、現状Frequencyによる
    「常連化」の加速は見られ

    購入回数と前回購入からの継続率

    View Slide

  30. 生存分析(コホート:初回購入年別)
    お待ちかね生存分析!
    31 Internal Use Only

    View Slide

  31. 生存分析(コホート:初回購入年別)
    お待ちかね生存分析!経時のチャーン悪化がビジネス鈍化の要因ですね
    32 Internal Use Only
    購入年別 生存分析 信頼区間付き&P値

    View Slide

  32. 生存分析の結果を受けて - 生存率の高い顧客群を探す
    Internal Use Only
    33
    方向性の整理 クラスター用変数
    ではいかにしてchurn rate を改善するかを検討した
    際、例えば以下のような方向性が考えられる
    ⚫ churnしにくい顧客群を探し、新規顧客のター
    ゲットに定める(後のchurn rateの改善を狙う)
    ⚫ churnを抑える指標(主には行動指標)がないか調べ
    て、意図的にその行動を再現する
    今回は前者のアプローチを進めます。顧客をクラス
    タリングし、顧客クラスター毎に優位差がないか調
    べます。クラスター作成の際の変数選択は、それを
    活かしたターゲティングができるよう意識します。
    今回は右記の変数を利用します。
    変数 補足
    従業員数
    創業からの⽇数
    BtoB or BtoC one hot encodingで処理

    View Slide

  33. 顧客クラスタリング - One hot encoding
    Internal Use Only
    34
    カテゴリ型のデータをベクトル表現に変更する処理のこと。Exploratoryではブロ
    クで共有されているにCustom scriptを事前に登録しておくと簡単に実現できる

    View Slide

  34. 顧客クラスタリング - One hot encoding
    Internal Use Only
    35
    カテゴリ型のデータをベクトル表現に変更する処理のこと。Exploratoryではブロ
    クで共有されているにCustom scriptを事前に登録しておくと簡単に実現できる

    View Slide

  35. 顧客クラスタリング
    elbow法等を参考にしながらk-means法で7つのクラスタを作成します
    36 Internal Use Only
    クラスター 各クラスターの説明
    cluster business type employee existing
    1 B2B 少ない 古参
    2 B2C 多い 新興
    3 B2C 少ない 新興
    4 B2C 多い 古参
    5 B2B 少ない 古参
    6 B2C 多い 新興
    7 B2B 少ない 古参

    View Slide

  36. 生存分析 (コホート:顧客クラスタ)
    作成したクラスタで生存分析を行うとクラスタ2&3 (B2Cの新興企業)の生存率が
    高く、クラスタ4(B2Cの古参大企業)の生存率が低めに出ているように見えます
    37 Internal Use Only
    購入年別生存分析 信頼区間付き & P値

    View Slide

  37. 生存分析 (コホート:顧客クラスタ)の結果を受けて
    Internal Use Only
    38
    方向性の整理 クラスター毎の売上期待値
    先に記した通りcluster 2と3は生存率が高めに出てい
    るよう見え両者はB to Cかつ新興企業という観点では
    共通しているように見えます。
    Churn Rate改善がKGIであれば、2と3の顧客にリソー
    スを集中する等も検討できますが、KGIが売上であ
    ればクラスター毎の売上期待値と掛け合わせないと
    本当の意味で顧客の期待値が見えないかと思います。
    なのでChurn data に各クラスターの一日あたりの売
    上期待値(累計売上÷顧客期間)を掛け合わせて、経
    過時間ごとの売上期待値(x)を算出します
    X = 生存期間 * 生存率 * 売上平均 or 中央値/日
    Cluster 6-7の分散が大きいので、
    外れ値を含んでいる可能性があ
    るので今回は中央値を利用する

    View Slide

  38. 経過時間ごとの売上期待値
    Internal Use Only
    39
    Analysisビューではなくtable ビューから生存分析のモデルをつくります

    View Slide

  39. 経過時間ごとの売上期待値
    Internal Use Only
    40
    Analysisビューではなくtable ビューから生存分析のテーブルをつくります

    View Slide

  40. 経過時間ごとの売上期待値
    Internal Use Only
    41
    クラスター毎の1日あたりの売上中央値と前述の生存分析のモデルと掛け合わせ
    (Join)して経過時間ごとの売上期待値(x)を算出します

    View Slide

  41. 経過時間ごとの売上期待値(結果)
    42 Internal Use Only
    売上期待値 Point
    ⚫ コホート分析の結果と異な
    り、最もパフォーマンスが
    高いのはCluster6、次いで短
    期的にはCluster 1 ⻑期的に
    はCluster 3のパフォーマンス
    が高い。リソースが限られ
    ているのであればリソース
    の再配分が必要かもしれま
    せん
    ⚫ ただし顧客がChurnしないこ
    とと、顧客acquisitionのしや
    すさは別なので、それはま
    た別の話ということで…

    View Slide

  42. Thank you
    43

    View Slide