やさしい実用統計 Pythonによるデータ分析入門
What you'll learn
- 記述統計による実用的なデータ分析
- データ分析のプロジェクトとしての作業プロセス
- Pythonによる具体的な処理方法
Requirements
- Pythonの初歩的なプログラムが書けること.
- Pythonの利用環境として,Jupyter notebookが利用できること.
Description
一般的な業務においてデータ分析のニーズが高くなっていて,誰しもがデータ分析の実施を要求される社会になっています.さらに,データ分析の信頼性を保証するために統計による説明が求められています.
統計の分野を大きく分類すると,記述統計,推測統計,ベイズ統計,多変量解析の分けられます.
これまでの慣例では,統計というと「推測統計」を指している場合が多く見受けられました.その理由は,伝統的に統計を活用している分野が品質管理であったり実験系の研究開発であったりしたためです.例えば,製品の製造現場では品質のサンプル検査が行われて,その標本における不良品率から生産した製品の不良品率を求めるために推測統計の推定や検定が行われています.
そのため,統計の専門家というと,主に推測統計を行う人達でした.
ところが,電子データが世の中に氾濫するようになり,ビックデータをマーケティングに活用したり,様々な企画立案のための市場調査などに統計分析の適用が進みました.しかし,このような業務領域では分析精度よりも利用できるアウトプットが求められます.そのため,推測統計を利用することは稀であり,殆どは記述統計の範囲で収まっています.
そこで,この講座では,高度な統計ではなく,一般的な業務において統計を適用してデータ分析を行いたい方のために記述統計の理論とPythonによるデータ分析の実施方法を解説します.
まず最初に認識しなければならないことは,統計分析もデータ分析もプロジェクトとして管理しなければならないという事です.私たちはデータ分析の工程をプロジェクトとしてフェーズ分けします.そして,そのワークロードを分析すると統計知識を利用した分析のフェーズは20%ぐらいしかありません.統計を学習して活用できる部分は20%にしかすぎず,それだけでは実際のデータ分析には全く歯が立ちません.
データ分析プロジェクトの中で最も作業比率の大きい部分は,データクレンジングを含んだデータ加工です.この部分が概ね60%を占めています.そして,その実行にはプログラムの使用が欠かせません.私たちは,このプログラミング基盤としてPythonを選択します.Pythonは,データサイエンスにおいてデファクトスタンダードの言語です.
この講座を受講する上での苦言ですが,データ加工およびデータクレンジングは労力が多く根気のいる作業です.一般的な統計分析の教材においては,これらの部分についての解説は行われません.その理由は,説明する側も説明を受ける側も地道で根気のいる作業を強いられるからです.そこで統計分析の美味しい所だけの解説で済ませて,分かった気にさせてしまいます.ところがそのような学習では,実際のデータを手にした段階において先に進むことができず挫折することが予想されます.したがって,この講座では敢えて苦行のような作業の解説を盛り込みました.このことをご理解ください.もし,自分でデータ分析が出来る必要がなければ,もっと楽な教材での学習をお薦めします.
この講座では,次の三つの観点でレクチャーを展開しています.
データ分析プロジェクト管理
記述統計
Pythonによる実行
レクチャーの主な内容
データ分析の準備
データ分析プロジェクト
データプロファイリング,電子化
Pythonの基礎知識
基本データ型
リスト内包表記
ライブラリーの活用
pandasデータフレーム
正規表現
データクレンジング基礎
カテゴリーデータ,整数,浮動小数点数
データフレームでのクレンジング
学習用データフレーム
各変量のクレンジング
記述統計
度数分布とヒストグラム
代表値:平均値,中央値,最頻値
四分位数,パーセンタイル
トリム平均
散布度
分散,標準偏差,平均偏差など
外れ値
四分位数と箱ひげ図
データの標準化
確率
確率の定義と定理
ベイズ統計
期待値
不偏推定量
1変量の記述統計
2変量の記述統計
散布図と近似直線
共分散と相関係数
単回帰分析
2変量統計の総合課題
分析結果の活用
データ分析結果についての考察
データ分析は結果が使えてこそ価値があります.難しい統計を使いこなす事が目的ではありません.本来の業務目的に沿った施策に効果が上がれば成功です.偏りの無いデータの入手を心がけデータの発生状況を知ることによって,誤りのない分析結果の解釈を提供することが基本です.
そのために,やさしい記述統計と分析プロセスの実行のためのPythonによる技術を身に付けてください.
なお,Pythonによる記述についてはJupyter notebookの文書をpdfにした添付資料がありますので,そちらを参照しながらご確認いただけますようお願いいたします.
また,Pythonについて不安のある方はUdemyの別コース「社会人のためのPython活用術」が一助になりますのでご利用をお勧めいたします.
Who this course is for:
- 統計を入門レベルから学習したい方
- 実際のデータでデータ分析の基本を学習したい方
- Pythonを統計分析のツールとして使いたい方
Instructor
数学とジャズとウィンドサーフィンが好きな自由人です。
以前は外資系のIT企業で長年働いていましたが、早期定年退職で自分らしい道を歩んでます。
かつてはソフトウェア開発者として統計パッケージなどを作っていましたが、データマイニングの日本への導入のためにビジネスインテリジェンス(BI)のマーケティングを推進しました。
その後、BIコンサルタントとして、日本の様々な業種の一流企業へのデータマイニングのコンサルティングを行ってきました。そこで実施してきた内容についてはお客様の大切な機密事項であるため、退職した後でも話すことはできません。しかし、そこで培ったノウハウや実際の経験に基づくデータ分析の進め方は、これからデータ分析プロジェクトを行おうとする方への適切なアドバイスとなります。
現在は、社会人向けに数学や統計・データ分析を教えています。ちまたでは、データサイエンティストが魅力的な仕事であるとか、単純な仕事は人工知能に奪われる、などの論評から統計やデータ分析を学ぶ方が増えています。しかし、学習の方向性が短絡的であることが多く見られます。統計や多変量解析、ニューラルネットワーク手法など、高度な分析手法を学習すればデータサイエンティスト的な仕事が出来るものだという妄想があります。
高度なデータ分析手法を身に付けても、現実の課題は殆ど解決できません。なぜならば、教科書で学習した内容は最初から解ける問題として提供されているので、覚えた手順で実施すれば解けて当然です。しかし、現実の課題は解ける保証がありません。それと、もっとも難しいことですが、直面する課題はビジネス課題であり、そのビジネス課題からどうやってデータの課題を導き定義するかが全く素人であることです。
実は、今の日本の社会人に必要なことは、創造的な思考能力です。一時期、ロジカルシンキングが流行りましたが、これは日本人の間違った学習方法を助長してしまいました。そのせいで内容は薄いが口だけは立つ人が増えたように思えます。この問題は根深く、学校における数学教育の間違いを引きずっています。
学校における数学教育の何が間違いかと言うと、数学を学ぶ目的がテストで高い点を取って偏差値の高い大学に合格することになってしまっていることです。理系の仕事を目指す人は、まだ数学の有用性を理解していますが、文系の人にとってはテストで点を取る以外に数学を学ぶ理由がないのです。そのため、数学の勉強は「公式を覚えて問題に当てはめる」です。つまり数学の勉強はつまらない暗記でしかありません。これでは、創造的思考能力はつきません。
対象が何であれ、それを学ぶには動機が必要です。数学は理系ではない一般の社会人にとっても大変役に立つ学問です。数学的センスがあると論理的思考ができるようになります。どこの企業でも会議に費やす時間は膨大です。しかも、会議において全く意見が噛み合わすお互いが一方的に言いたいことを言うだけであったり、何を議論しているのかも分からなかったりします。
このような会社における普通の状況において論理的思考ができれば、どれだけ貢献できるでしょうか。議論を最適な方法へ持って行くことができ、周囲の人からの信頼を得ることもできます。すると仕事も効率的になり楽しい職場に変えることも夢ではありません。
私は多くの人が実践的かつ論理的な思考力を付けることによって、楽しい人生を送ってほしいと願っています。そして、そのためのカリキュラムを提供していきます。