【保存版】初心者でも分かるデータ分析の本質とスキルアップの道のり
見出し画像

【保存版】初心者でも分かるデータ分析の本質とスキルアップの道のり

naki

こんにちは。naki(@naki_mk)と申します。普段はTwitterに生息しており、日常やビジネスに関連したつぶやきをしています。今回は「データ分析」という仕事について、プロとして仕事をしていく中で私が必要だと考える要件・素養や、勉強するべき内容などをまとめていこうと思います。

本記事の内容は「勉強法」というよりはデータアナリストという仕事に関する哲学に近いものや、自分なりのノウハウが多く含まれているので、参考にする部分そうでない部分は各々判断していただけると嬉しいです。

経歴紹介

私は社会人5年目のアラサーで、IT系事業会社でマーケティング部のマネージャーをした後、現在は米国企業(S&P 500)にビジネスアナリストとして勤務しています。業務の内容は主にデータ分析×マーケティングが軸で、PythonやSQLをコーディングしてデータ解析やモデリング構築をしたり、そこから得た知見を他部署に展開するためのガイダンスを作ったりする仕事をしています。

過去にビジネスアナリストに関連する記事や、マネジメントに関する記事をまとめていますので、お時間ある際に是非一読いただけるとnoteを更新するモチベーションになります。

分析の目的はアクションの判断をすること

見出しに書いてあるとおりなのですが、データ分析の真の目的はアクションの判断をすることです。そのアクションの粒度は上流から下流まで様々かと思いますが、分析を行うことによってある特定のアクションを取るべきか、そうでないかという、Yes / No Questionに対してクリアに回答することができますよね。

データ分析には2つの工程・種類があると思っています。まずひとつは「厳選された」事業の主要KPIを定期的にトラッキングし、そこから事業の良し悪しを計画対比、昨年対比、競合対比などのものさしで事業状況を整理して課題を見つける工程。いわゆるKPIマネジメントと言われることが多く、この工程は事業全体のマネジメントからセールスの個人KPI管理など幅広く使われる手法かと思います。まずは全体像を幅広く知るという工程ですね。

そしてふたつめが、上記のトラッキングから見つけ出された課題をベースに、改善の余地がある数字はなにか、過去の施策がうまくいったのかどうか(同じ施策を再度横展開するべきかどうか)を判断するために深堀りをする工程です。言い換えると、データの深堀りを行っていき、KPIマネジメントの工程で出てきたBusiness Questionに対して検証を行う工程です。

データ分析とは切っても切れないKPIマネジメント

ここの工程については多くの事業会社では定例化されており、常にKPIのトラッキングを行っていることがほとんどかと思いますが、一方で非常に難しい領域でもあると思っています。KPIマネジメントのポイントとなるのは、①事業KPIの分解を正しい粒度・ボリュームで行うことにより、「本当に管理するべき」数字の数を制限すること ②定点観測によって判断→アクション→結果のサイクルを定期的に回すことがメインにあると思います。

よくあるのが、重要KPIが無数に増え、人間の脳では処理しきれないだけの指標が社内に散らばり、数字に足が生えて独り歩きしていき無駄な議論を生んでいく...いくつかの会社を見てきていますが、この事象は無限回見てきました。また管理するべき数字が多くなりすぎて担当者が数字に溺れてしまって、結局何かを解釈し課題を発見するまでに至らない...といったことも皆さんの身の回りで多くあるのではないかと思います。

KPIマネジメントをきちんと行っていく上で重要なのは、①KPIツリーを皆がイメージ・理解できる指標・粒度で分解されていること、②上からブレイクダウンする形で事業を解釈していく「数字を読み解くフロー」を確立させ、それをチームに浸透させていくことだと思います。そのフローを確立させるためには、戦略コンサルなどが使っているロジカルシンキングやフレームワークのスキル(MECEやイシューツリーなど)が必要になってきますし、もちろんビジネスに対する解像度の高い理解が求められます。

例えばあなたが大手のECサイトを運営していたとします。このときのKPIの分解の仕方はいくつかあると思いますが、今回「売上=商品数×1商品あたりの売上」と分解したとしましょう。

一般的に大手ECサイトにおける商品あたりの売上分布は正規分布ではなく、指数分布に近いような形を取ります。正規分布に基づいていれば、商品数を増やしたときに、投下する商品数を増やせば1商品あたりの売上は平均値に収束するため、分解したKPIツリーのロジックに準じて売上が上がっていくと予想できます。一方指数分布の場合、投入する商品が売れる商品群に分布する確率が正規分布ほど一様ではないため、商品を投入しても平均値に収束しづらく、実際問題商品を投入し続けても数式通りに売上は上がっていきません

(もちろん商品数はECにおいて重要なKPIではありますが)上記のような事業マネジメント方法では、自分のアクションに対する結果が予測しづらいため、データからアクションの判断をすることが難しいですよね。今回は極端な事例ですが、そういった実態に即していないKPIマネジメントからの脱却というのはアナリストに限らずリーダーが皆意識しなければならないことなのかなと思います(少し専門的な例ですみません)。

アナリストの腕の見せ所、検証工程

検証工程は先程の通り、KPIマネジメントから抽出された課題を解決するために深堀りする工程です。全ての意思決定の川上にはKPIマネジメントがあるので、KPI設計がそもそもずれていたら、その後工程であるデータ検証もずれてしまうのですが、今回は正しいKPIマネジメントができている前提で話を進めます。

深堀りのベクトルもいくつかあり、自分が経験した中では大きく①課題特定 ②施策効果検証・シミュレーションの2つに分かれていると考えています。

課題特定:KPIマネジメント工程出ててきた定量的な課題を、より分解して解像度を高めていく工程
昨年対比:昨年できていたのにできなくなっている指標・理由を検証
競合(市場)対比:競合や市場はできているのに自分たちだけができていない指標・理由を検証
計画対比:計画上はできると踏んでいたのにoff-trackになっている指標・理由を検証

施策効果検証・シミュレーション:課題がクリアになり、具体的にどのようなアクションを取るのが最適解を検証する工程
候補対比:過去に取り組んだ施策や、対象の特性などを比較することで、具体的にどの指標にどれだけのインパクトを与えたのかを検証・シミュレーション
数理モデルによる予測:過去のビッグデータ及び機械学習などの技術を用いた、施策やアクションの結果予測

このように、粒度が粗いものから順次定量的に分解していき、基準となるものさしで良し悪しを評価しながら課題を明確にしていく、そしてその課題が明確になったら過去の取り組みからその指標に対して効果が高かったものを選んでアクションにつなげていく...というのがデータドリブンの意思決定の大まかなフローになります。

データ分析の本質は比較

データ分析の仕事をしているとよくあるのが、目的とするアクションがない数字の羅列です。数字がひたすら並んだExcelをぽんと出されて、「今この数字がこういう状況になっています」と延々と喋ってくる人いませんか?長時間のデータの説明したあとにやってくる「で?」感。私もデータ分析を本格的にやり始めた当初はよくありました。実はこのパターンのアウトプットを持ってきてしまうパターンってデータアナリストに限らず非常に多いんです。

前項の話のサマリーにもなりますが、データ分析の本質は「事業KPIから分解された指標を、何かしらの基準と比較し、意味を見出すこと」です。まずどの指標を見るかーこれは前項のKPIマネジメントの話で重要性を説明しました。そしてその指標を何と何で分けて比べるかー何かと比べることで指標の高い低いがわかり、そこで初めてただの指標から事業状況の解釈へ変わります。

ただしここで注意をしなければならないのは「事業の解釈」がビジネスへ貢献できるか(≒アクションまで落とし込めるか)という点です。一番やってはならないのは思いつきや興味だけで分析を進めてしまうことです。

データの比較によって、事業課題に対して要因の理解が深まるか、分析や考察から取るべきアクションの方向性や示唆が得られるか、具体的な意思決定やアクションを取るべきかという問いに対してYes / Noで答えられるか、という明確な意図をぶらさずにデータに触れることが非常に重要になってきます。

データ分析はイシュードリブン

さて、ここまでの話では、データ分析の出発点となるKPIマネジメントの重要性検証工程の全体感、そしてデータ分析の本質は比較にあるということをまとめてきました。ここまで読んでいただいている皆さんならすでにおわかりかと思いますが、これらの3つの要素はデータ分析業務を行う上では必ず一本の延長線上にあることが必要というのが私の持論です。

上記のとおりでないデータ分析というのは、例えば、ほぼ無限大ともいえる膨大なデータからとある興味深いファクトを切り出し、その知識を使って新しくビジネスを動かそうとするものです。それはつまり「新しい技術ができたけど商品化できない?ニーズがあるか知らんけど」というデジャブなあの流れに近いです。

例えば、家電製品における技術革新がまだまだ新鮮だった高度経済成長期の日本ではそのような方法で通用したかもしれませんが、その結果ビジネスで苦労を強いられてきたのが直近の日本の家電メーカーですよね。情報技術も同じく、ビッグデータというものが普及し、いろいろなデータを分析・可視化することができるように、知りたい情報へのアクセスがどんどん簡単になっていきました。これによってファクトドリブンで物事をすすめるのはかなり危険で、「イシュードリブン」で事業課題やアクションを検討していく思考フレームワークが非常に重要になってくるわけです。

仮説から判断したいアクションまで考え抜く

さて、イシュードリブンで分析をすすめる際、次に重要になってくるのが「仮説」です。課題がクリアになったら、その原因はどこから来ているのか?どのような打ち手により改善することができるのか?という問いが生まれてきます。このような問いをカバーする「答えの候補」をいくつか洗い出し深堀りしていくと、スムーズに進めることができます。

そしてこの際に抜け漏れがちなことが、「仮に問いに対して想定通りだったとして(あるいはそうでなかったとして)」次にどのようなアクションにつなげていくか?を事前にフローチャート図のイメージをクリアにすることです。私はこれを含めてAnalysis Plan(分析計画)と呼んでいますが、最終的にどのようなアクションの意思決定を行うための分析か?という分析の目的の原点に返ることが重要になってきます。

自分の仮説が正であるとしたときに、アクションを取るべきか?という具体的なことまでクリアに考えることが、ビジネスにインパクトを与えるデータ分析につながるわけです。

データ分析のハードスキルを磨くのは実践

さて、記事のタイトルでは「スキルアップの道のり」を語っているくせにビジネス側のスキルに関する話が多かったので、もしかしたら待ちくたびれている読者も多いかもしれません。この記事では大まかな学習ロードマップは示していこうかと思いますが、具体的な参考書や勉強方法などは各々のデータ分析業務内容や前提となる知識に依存するので、ここではそこまで深くは触れません。

といいますのも、私の経験上、データ分析のスキルは実践経験でのみ身につくと思っているからです。サンプルデータやサンプルコードも世の中色々と出回っていますが、これまでまとめてきた通り、「イシュードリブンでアクションプランもスコープに入れた仮説設計・分析設計を行い、そこから分析実務を行う一連の流れ」がデータ分析の全体像であるため、データを実際に集計したり加工したりするスキルというのは、あくまでデータ分析工程における一部分に過ぎないと考えています。

また、こんなことを言いだしたら元も子もないのですが、データ分析の工程において技術的なボトルネックがある場合、ググればぶっちゃけなんとかなります。私も毎日ググりながらコーディングしていますし、過去にやった自分またはチームメンバーのコードを使いまわして処理しています。

本質的な観点でいうと、きちんとアクションを推進できるだけのビジネスに対する理解力を付けるのはもちろんのこと、次に重要なのが「問いに対して、どのデータをどのように活用すれば、論理的に整合性が合う解釈を導き出せるか」という自社のデータに対する理解です。こればかりは自社のデータの定義や特性を頭に叩き込み、即座に引き出せるだけの経験がものを言います。

ですので、基本的な分析ノウハウを学んだら、すぐにデータへアクセスする権限をもらい、ひたすらいろんな数字を出して遊んでみることが理解への近道だと思います。プログラミングでも試験勉強でも何でもそうなのですが、体系的に学んでから問題を解くのではなく、超基礎がわかったらすぐに実践練習を行い、実際の問題のイメージを早期に掴むことが一番重要です。多くの人が何かしらの理由をつけて実践を避けようとするのですが、それは正直逃げでしかありません。できるようになりたいなら、重い腰を上げてすぐにでも取り掛かりましょう。

データ分析の基礎学習のロードマップ

さて、最後に簡単にデータ分析に置ける超基礎スキルの学習ロードマップをまとめていきます。がっつりデータアナリストとしてのキャリアを歩むわけでないのなら、②まででも十分ビジネスの現場では活躍できると思います。

一方上記にさんざん示してきているとおりですが、ビジネスに関する理解度が浅ければ、③をいくら極めてもデータ分析×ビジネスという観点では大成し得ないと思っています。そのバランス感覚を持ちながら勉強を進めていくことをおすすめします。

データアナリスト入門①:BIツール(Power BI, Tableauなど)

おそらく多くの会社が導入しているであろうデータ可視化ツールやBIツールといわれるものを習得するフェーズです。実はTableauなどのBIツールは様々な関数・ソリューションを搭載しており、これらを真の意味で使いこなせるようになると、SQLなど使わずともいろいろなデータ処理ができるようになります(ツールによってはツール内に機械学習モデルが組み込まれているものなどもありますが、私はそこまで使いこなすことはできません)。

初心者の方はまずは会社でパブリッシュされているダッシュボードを使いこなせるようになるところから着手しましょう。そこでどのようなデータが可視化・KPIマネジメントされているのか、全体像を把握することをお勧めまします。また、データを扱うにあたり、出力されたアウトプットの定義を確認する癖を身に着けておくと後々役に立ちます。

ここのフェーズにおけるゴールとしては、

・接続されているデータソースから自由にデータ抽出及び可視化ができる(フィルター、ピボット、グラフ作成)
・複数のデータソースを結合できる
・内蔵されている関数を用いて簡単な集計をすることができる

状態まで習得できると十分だと思います。Excelで普段使うような基礎的な関数はもちろん、WINDOW関数などが使いこなせるようになれば、その後のSQLなどの学習フェーズにおいてもそのまま活かせる考え方なのでぜひ習得するようにしましょう。

データアナリスト入門②:RDBとSQL

次にRDB(リレーショナル・データベース)やSQLについて学ぶフェーズです。このあたりからプログラミングアレルギー(SQLは厳密にはプログラミング言語ではありませんが)を発症して敬遠したり、ドロップアウトしたりする人が多く出ます。

だからこそチャンスだと私は思っています。正直、SQL自体は比較的学習コストは低いですし、一方、RDBを理解しSQLを叩けるようになるだけでできるようになる範囲がグンと増えるので、非常にコスパの良いスキルだと思います(かつ市場価値も分かりやすく上がります)。

私の場合はちょっと特殊でして、BIツールの前にSQLを勉強しました。BIツールとSQLが前後した深い理由は特にないのですが、下記のツイートに書いてあるとおり、2冊程度基礎中の基礎の本を読み、あとはデータベースへのアクセス権限をもらい、ひたすらいろいろなクエリを回してTry & Errorで勉強しました。

社内にいる他のアナリストや過去の分析案件の資料、SQLファイルをもらって読んで真似して動作を確認する...この一連の作業を2週間程度やっていけば、どんなクエリだとエラーが出るかもわかってきますし、なんとなく社内のデータ構造の全体感やビジネスに関する理解度が上がっていきます。

基礎的な学習に時間をかけすぎず、実践を通してわからないところは人に聞くか、ググって自分で解決できるようになると、さらに学習効率が上がっていくと思います。ポイントとしてはエラーが出ても諦めないことです。エラーは必ず出ますし(私は今でも普通にエラー吐きます)、学習しはじめの頃は同じところで2,3時間詰まってしまうこともありました。逆に一度そのような経験をすれば、次同じクエリを書こうと思ったときはすでに身についているものなので、エラーを吐くのも練習の一つだと思って頑張りましょう。

このフェーズにおけるゴールとしては

・正規表現マッチを使った条件指定(Where句)
・複数テーブルにまたがったデータ取得操作(JOIN句)
・複数クエリにまたがったデータ取得操作(WITH句)
・サブグループを使ったデータ集計操作(GROUP BY)
・条件分岐を使ったデータ取得操作(CASE句)

あたりを理解して自由に使いこなせるようになれば、あとはやりたいことをベースにググって解決できるようになると思います。もう少しステップアップすると、例えば新しいテーブルを作るとなったときに、どのようなテーブル設計にすればデータ分析上都合がいいか、というデータ要件定義(ER図など)を考えられるようになるとより良いですね。

私が学習したときはほぼ独学で、ほとんど人の手を借りずにやりましたが、私がマネージャーをしていた頃、メンバー向けに学習用ドリルを作り、週2時間の勉強会をセットして学習をフォローしていました。

この際役に立ったとメンバーからフィードバックを受けたのは、実際の業務で発生したBusiness Questionと、それに対して私が実際に書いたコードをまとめた「実践50本ノックのドリル」でした。このドリルはユースケースが非常に実務的でイメージが湧きやすく、中には今の自分達のスキルセットでは出力できないものも含まれていたので、そういった内容が彼らの学習意欲を掻き立てているようでした。もしこの記事の読者の中に、教える側の人がこの記事を読んでいたらぜひ参考にいただけると嬉しいです。

データアナリスト入門③:プログラミング言語(R, Pythonなど)

さて、最後ですがプログラミング言語を使ったデータ分析やシミュレーションを行っていくフェーズです。このフェーズまで来ている人たち(単純なデータ集計だけでは実現できない高度な要求を受け取っている人たち)は、「どのような学習が自分に必要か」はクリアな人たちが多いと思います。

実際、私がPythonの勉強を始めたきっかけは、業務の自動化によるチーム全体の負荷削減と、機械学習ロジックを組み入れた事業予測モデルを作り、事業KPI管理と組織マネジメントを行おうと考えたことが出発点でした。

まずは基本的な統計学を理解していることを前提に、PythonやRのコーディングの練習をすると良いでしょう。私はPythonを普段書いているのですが、基礎的な文法を理解したらPandas, Numpy, Matplotlib, Scikit-learn, Pycaretなどのライブラリを一通り勉強すると良いと思います。

個人的にはTensorFlowなどのライブラリも興味はあるのですが、私の置かれているポジション・職務範囲的に、高度なテクニックを学ぶよりも、ビジネス側の上流工程の戦略策定や推進実行にリソースを使ったほうが、実際にデリバリできるインパクトが大きいので、現時点ではそこまでの学習はしていません。データ分析に限らずですが、必要なタイミングで必要なものを勉強すればいいかなと思っています。

この段階になるとビジネス側の要求に対応していく形で徐々に自分のデータ分析スキルを広げていく形になると思います。私の場合はビジネス側の立場も強いので、いわゆる機械学習エンジニアほどはエンジニアリングに時間を割きません。どういったスキルを積み上げていくかは個々人の状況、デリバリできるインパクトの期待値の大きさによって調整いただければいいかなと思います。

手法の勉強にこだわるべからず

ここまで長文の内容に付き合っていただきありがとうございます。以上、私が考えるデータ分析の本質と、初心者向けのデータ分析スキルの学習ロードマップをまとめてきました。

これまでの内容をまとめると下記のようになります。

・データ分析の真の目的はアクションの判断をすることである
・データ分析を行うプロセス:
 1.KPIマネジメントを出発点とし、イシュードリブンで課題や問いを設定
 2.仮説とその仮説を真としたときのアクションプランを明確に策定
 3.判断基準となるものさしで比較を行ってアクション実行是非を判断
・なるべく基礎学習はライトに終わらせ、実践を通じてデータ分析経験を積むべし
・データ分析初学者の場合の学習ステップ:
 1.BIツールの基本
 2.RDBとSQLの基本
 3.ビジネスニーズに応じ学習範囲拡大(Python, Rなど)

学生と違い社会人の勉強は網羅的にカバーしようとすると時間がいくらあっても足りないので、必要なことベースで知識を身に着けていくことが求められます。

そのため、勉強法や勉強内容にとらわれるのではなく、自分が発揮しなければならないパフォーマンスに対し、どのようなスキルが欠けているか、あるいはどのようなスキルによって期待通りのインパクトをデリバリできるのかを考えるところから初めて見ると良いかもしれませんね。

データ分析スキルを身につけたい人、データアナリストやビジネスアナリストを目指している人、現在そのような職種に就いていてスキルアップを目指している人、様々いるかと思いますが、本記事がデータ分析という仕事に関する本質理解につながれば幸いです。

最後になりますが、データ分析のスキルは非常に汎用的で、今後もニーズが耐えないハードスキルになってくると思います。確かにデータ分析の処理自体は、色々ツールが発達していくにつれて人の手間がかからなくなっていくとは思いますが、データ分析における肝は「ビジネスからイシューを定義すること」「イシューから仮説を見出し、検証のために数式化すること」「検証結果を解釈し、アクションへ落とし込むこと」にあります。これらの要素こそ、人がやる意味があるのです。この価値こそ人間のみが出せる付加価値だと私は思っています。

皆さんはデータ分析の本質、そしてハードスキルとしてのデータ分析スキルについてどのようにお考えでしょうか?ぜひともご意見をお聞かせください。

ここまで読んでいただきありがとうございました。それではまた。

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
naki
外資系(S&P500) / Fカップ丸の内にゃんにゃんOL / 20代限界アラサー / Business Analyst, Data Scientist / コンサル→IT企業マーケmngr.→外資 / noteでデータ分析やマーケティングの経験や知識をまとめてます