はじめに
突然ですが
$\huge{イシューからはじめてますか?}$
$\tiny{↑興味引こうと生意気なこと言ってます。すみません。}$
私は学生時代に課題解決型分析インターンに参加していたことがあり、
「とりあえず可視化しよう」
「とりあえず勾配ブースティング使おう」
「もっと精度をあげよう」
とイシューを考えずに解の質ばかりを上げようとしていました。
当時の分析チームの長には
「今日の成果はなに?」
「そもそもその作業は何のためにやってるの?その先に何があるの?」
と毎日毎日 問い詰められたました。 アドバイス頂きました。
当時はその意図を正確に理解できなかったのですが、
最近課題解決の名著であるイシューからはじめよ――知的生産の「シンプルな本質」を読み、長はこのことを伝えたかったのか!と感銘を受けました。
ただ大学生あがりの私には内容がとても難解でした。
そのため実際に分析することで理解しようと思いこの記事を書くことになりました。
初Qiita記事のため至らない点が多々あると思いますが、アドバイス沢山頂けると嬉しいです!!
また分量が多いため5つの記事に分けています。
イシューからはじめるデータ分析①イシュー編
イシューからはじめるデータ分析②データ加工編
イシューからはじめるデータ分析③データ分析編
イシューからはじめるデータ分析④機械学習編(書き途中)
イシューからはじめるデータ分析⑤分析基盤構築編(書き途中)
使用するデータ
これまたpython×データ分析の名著であるPython実践データ分析100本ノックの
第21~第50ノックまでで扱う小規模なジムデータを使用します。
この本は実務を意識したカリキュラム設計になっておりとても勉強になりました。
作者の方ありがとうございます!
ファイル名 | 概要 | データ数 |
---|---|---|
use_log.csv | ジム利用履歴(2018年4月 ~ 2019年3月) | 200,000 |
customer_master.csv | 会員データ(2019年3月時点での) | 4,200 |
class_master.csv | 会員区分(オールタイム,デイタイム,ナイト) | 3 |
campaign_master.csv | キャンペーン区分(入会料通常,半額,無料) | 3 |
全体の流れ
『イシューからはじめよ』を意識しながら、ジムデータの分析に取り組む。
- 顧客の声を聞く
- イシューを見極める
- ストーリーラインをつくる
- 絵コンテを作る
- 実際に分析をする
- アウトプットを生み出す
1. 顧客の声を聞く
スポーツジムを運営するKさんからこんな依頼があった。
「うちのジムは筋トレブームで一時期は顧客数は増えていたのですが、ここ1年伸び悩んでる気がするんですよ。例えばいつの間にか来なくなってしまって、解約されたりだとか。。データはあるので流行りのAIとかデータ分析でどうにかならないでしょうか?」
2. イシューを見極める
ここが最重要&最難関です。
イシューとは「白黒をはっきりさせる必要のある根本的な問題」と定義され、
イシューからはじめるとは「何に答えを出す必要があるのか」から議論をはじめる、分析の設計手法のことです。
つまりは生産性を爆上げすることがイシューからはじめる目的です。
ということで「よし! df.describe() df.plot.bar() model.fit() ...
」ではなく、
まずイシューを見極めるところから始めていきます。
様々なイシューが考えられそうですがここでは2つ例に挙げてみます。
- 新規顧客をどのように獲得していくか?
- 新規顧客の獲得より既存顧客の継続を優先するべきである
まず1はイシューではない可能性がある例です。
仮に素晴らしい施策で新規顧客を獲得しても、継続率が低い状態ならば
穴の開いたバケツに水を注ぎ続けることになりかねません。
またどのように〇〇か?は単なる設問過ぎず、
結局何を分析すれば良いか?結果をどう解釈すれば良いか?が分かりません。
仮説検証とサンプルサイズの基礎 cookpadも大変勉強になります。特に「言い切れば仮説になるよ!」がシンプルで好きです。
2は分析対象や結果の解釈、次のアクションがイメージでき、
良いイシューの見極めではないでしょうか?
(とは言っても私の能力では 良いシューかどうか? なんて判断できないので、上司から「いいイシューだね!進めてみな!」と言われたと仮定して進めます笑)
もしイシューの検討つかない場合は
- そのジムで実際にトレーニングして肌で感じる
- 顧客やトレーナーにヒアリングしてみる
などの一次情報に触れるとイシューが見極めやすくなるとのことです。
3. ストーリーラインを作る
課題解決するためのストーリーラインを強引にでも考えます。
最終的に何を生み出すのか?そのためにどのような分析をしていくのか?
つまりは活動の全体像を明らかにすることがストーリーラインを作る目的です。
- 新規顧客の獲得より既存顧客の継続を優先させるべきである
- 売り上げはここ1年一定で伸び悩んでいる
- その要因は新規顧客売上の減少ではなく、既存顧客売上の減少である
- 既存顧客の退会には特定のパターンがあり予測可能である。
- 退会しそうな特徴がある人には「最近忙しかったですか?」「新しく〇〇プログラムが出来たのリフレッシュしませんか?」「体以前より締まりましたね!」など声かけを徹底する。
- 売り上げ、継続率、滞在時間、退会しそうなユーザーなど、日週月次のKPIを常日頃から把握できる環境を整備し、今後は施策ごとに検証し改善していく
ナイーブなストーリーラインかもしれませんが、上司からGOいただきました!(仮)
ストーリーライン通りに結果が出ることは無いと思われるため、適宜修正していきます。
4. 絵コンテを作る
ストーリーラインに対しての分析、検証方法を絵でまとめていきます。
「どんな分析結果が欲しいか?」「どんな分析結果だと納得する(させられる)か?」
をイメージして描いていきます。
ナイーブな絵コンテかもしれませんが、上司からGOいただきました!(仮)
また状況にもよりますが
「横軸を日付、縦軸を売り上げ、棒グラフで変化をみる => 一定」のように
「どのような軸でどのような値をどのように比較するか => 仮設」
をメモ書きするだけでも良いのかもしれません。
まとめ
分析する前にまずイシューからはじめて今後の分析の流れを作ってきました。
今回はデータが固定で小さいため、イシューからはじめなくても結果は出せるのかもしれません。
しかし実際の現場だとデータが膨大にあり、特徴量抽出の仕方は無数にあると思われます。
そのような状況でイシューからはじめることが大いに役に立つのかもしれないですね!