
この講座の取り組み方を説明します.
このコースのカリキュラムです.
データ分析は,何らかの業務目的のための行われます.業務目的のために行われるプロジェクトとしてデータ分析を位置付けます.
データ分析には,求解的分析と探索的分析があります.これらの違いについて理解します.
データ分析プロジェクトの各フェーズとスキルについて説明します.
データ分析を始める前にデータを知るために行うデータプロファイリングについて説明します.
データを電子化する際のルールの説明とこの講座の中で使用するデータセットについての説明です.
ここから5つのレクチャーで,Pythonの基本的なデータ型について説明します.
1. 基本データ型
2. 配列
3. range関数
4. set関数
5. 列挙型
この5つのレクチャーの参考としてpdf資料を添付しています.
さらに,これらPythonのプログラムを実施するためのJupyter notebookのファイルをZIPにしたものを添付していますので,ダウンロードしてご利用ください.
Pythonの基本的な配列構造について説明します.
リスト配列
タプル配列
辞書配列
配列を生成するrange関数とlist関数について説明します.
set関数と集合型の配列について説明します.
列挙型データ enum について説明します.
データ処理に必須のテクニックであるリスト内包表記について学習します.
辞書,集合,タプルについての内包表記を学習します.
Pythonのライブラリーを利用するための搬入について説明します.
pandasのデータフレームを何もないところから作成する単純な方法について学習します.
CSVファイルからデータを取り込んでデータフレームを作成する方法について学習します.
データフレームの中身を編集する方法について学習します.
正規表現で必要になるraw文字および数字の正規表現について説明します.
また,後続のレクチャーで説明する正規表現関数についての説明文書をpdfファイルで添付しています.
正規表現パターンに一致する文字列を全て抽出する findall 関数について学習します.
正規表現パターンと最初に一致する文字列を抽出する search 関数について学習します.
正規表現パターンと文章の先頭から一致することを検証する match 関数について学習します.
正規表現パターンと文章が完全に一致するかを検証する fullmatch 関数について学習します.
正規表現のパターンの要点について学習します.さらに,整数および小数点付数のパターンを作成します.
正規表現パターンをコンパイルして使用する方法について学習します.
正規表現を使用する課題です.少し時間をかけて試行錯誤してみましょう.
正規表現についての演習課題の解答例です.なお,正解は一つではありません.
テストを繰り返してプログラムを完成させていくプロセスを身に付けてください.
正規表現を使用した文字列の置換について学習します.
ハイフン記号やダッシュ記号などマイナス記号に似た記号があり,負の数を入力するときにそれらの記号を誤って使用されるケースがあります.そのようなデータにおいて,マイナス記号を統一するためのクレンジングについて学習します.
データクレンジングは地味な作業ですが,作業量も多く,データ分析にとっては欠かせない部分です.このレクチャーでは,クレンジングの必要性を再認識します.
血液型データを例にとって,カテゴリーデータのクレンジング方法を学習します.
年齢データを例にとって,文字列から整数を得るときのクレンジング方法を学習します.
文字列で記載された温度データを例にして,小数点付数のクレンジング方法を学習します.
データフレームにおけるクレンジングを実施する前提として,CSVファイルを読み込んでデータフレームを構成するまでの準備を学習します.
データフレームのクレンジングに活用するツールの準備について学習します.
データフレーム内の変量 height のクレンジングを実際に実施します.
データフレームン内の変量 weight のクレンジングを実際に実施します.
データフレームン内の変量 age のクレンジングを実際に実施します.
データフレーム内の変量 gender のクレンジングを実際に実施します.
データフレーム内の変量 blood のクレンジングを実際に実施します.
データフレームの各変量のクレンジングを統合した処理プロセスを紹介します.
この結果として得られたクレンジング済みデータはCSVファイルに保管します.
記述統計の全体像を把握します.
データ分析で最初に実施する度数分布表とヒストグラムについて学習します.
Pythonのデータフレームにおいて,度数分布表とヒストグラムを求める方法を学習します.
平均値,中央値,最頻値などを統計では代表値と言います.これらの定義について学習します.
代表値である平均値,中央値,最頻値をデータフレームの変量について求めます.
主な代表値である平均値,中央値,最頻値の特徴について説明します.
算術平均,幾何平均,調和平均の違いについて,説明します.
四分位数,パーセンタイル等の分位数について,その定義式を説明します.
四分位数をPythonで求める二種類の方法を説明します.
データの最小値側と最大値側のデータを除いた平均であるトリム平均について説明します.
データのバラツキ度合いを表す散布度について説明します.
最も重要な散布度である分散と標準偏差について,データ件数で割る式とデータ件数-1で割る式を説明します.
平均偏差と中央値絶対偏差について説明します.
四分位範囲と四分位偏差について説明します.
統計処理で除外される可能性のある外れ値について説明します.
Pythonのライブラリーを使用した分散と標準偏差の計算方法について学習します.
標準化変量,偏差値,正規化など,データのスケール変換について説明します.
四分位数に基づく箱ひげ図について説明します.
確率について,有限事象に限定して理解します.
なお,添付のpdfファイルは,確率の定義,条件付確率,独立事象を含めた解説です.
確率の定義および加法定理について説明します.
条件付確率および乗法定理について説明します.
独立事象について,具体的な例を用いて説明します.
ベイズの定理は,情報を与える事によって確率の精度を向上させる方法です.
期待値の定義について説明します.
なお,添付したpdfファイルには,後続のレクチャー「期待値の公式」,「確率における分散」,「独立事象の共分散」についての説明が記載されています.
期待値の公式について説明します.
確率のおける分散の定義および公式について説明します.
独立事象の共分散がゼロになることを説明します.
不偏推定量の期待値について説明します.
添付したpdfフィルは,後続のレクチャー:不偏平均,不偏分散の説明も含まれています.
不偏平均について説明します.
不偏分散の計算式において分母が n-1 であることを証明します.
一般的な業務においてデータ分析のニーズが高くなっていて,誰しもがデータ分析の実施を要求される社会になっています.さらに,データ分析の信頼性を保証するために統計による説明が求められています.
統計の分野を大きく分類すると,記述統計,推測統計,ベイズ統計,多変量解析の分けられます.
これまでの慣例では,統計というと「推測統計」を指している場合が多く見受けられました.その理由は,伝統的に統計を活用している分野が品質管理であったり実験系の研究開発であったりしたためです.例えば,製品の製造現場では品質のサンプル検査が行われて,その標本における不良品率から生産した製品の不良品率を求めるために推測統計の推定や検定が行われています.
そのため,統計の専門家というと,主に推測統計を行う人達でした.
ところが,電子データが世の中に氾濫するようになり,ビックデータをマーケティングに活用したり,様々な企画立案のための市場調査などに統計分析の適用が進みました.しかし,このような業務領域では分析精度よりも利用できるアウトプットが求められます.そのため,推測統計を利用することは稀であり,殆どは記述統計の範囲で収まっています.
そこで,この講座では,高度な統計ではなく,一般的な業務において統計を適用してデータ分析を行いたい方のために記述統計の理論とPythonによるデータ分析の実施方法を解説します.
まず最初に認識しなければならないことは,統計分析もデータ分析もプロジェクトとして管理しなければならないという事です.私たちはデータ分析の工程をプロジェクトとしてフェーズ分けします.そして,そのワークロードを分析すると統計知識を利用した分析のフェーズは20%ぐらいしかありません.統計を学習して活用できる部分は20%にしかすぎず,それだけでは実際のデータ分析には全く歯が立ちません.
データ分析プロジェクトの中で最も作業比率の大きい部分は,データクレンジングを含んだデータ加工です.この部分が概ね60%を占めています.そして,その実行にはプログラムの使用が欠かせません.私たちは,このプログラミング基盤としてPythonを選択します.Pythonは,データサイエンスにおいてデファクトスタンダードの言語です.
この講座を受講する上での苦言ですが,データ加工およびデータクレンジングは労力が多く根気のいる作業です.一般的な統計分析の教材においては,これらの部分についての解説は行われません.その理由は,説明する側も説明を受ける側も地道で根気のいる作業を強いられるからです.そこで統計分析の美味しい所だけの解説で済ませて,分かった気にさせてしまいます.ところがそのような学習では,実際のデータを手にした段階において先に進むことができず挫折することが予想されます.したがって,この講座では敢えて苦行のような作業の解説を盛り込みました.このことをご理解ください.もし,自分でデータ分析が出来る必要がなければ,もっと楽な教材での学習をお薦めします.
この講座では,次の三つの観点でレクチャーを展開しています.
データ分析プロジェクト管理
記述統計
Pythonによる実行
レクチャーの主な内容
データ分析の準備
データ分析プロジェクト
データプロファイリング,電子化
Pythonの基礎知識
基本データ型
リスト内包表記
ライブラリーの活用
pandasデータフレーム
正規表現
データクレンジング基礎
カテゴリーデータ,整数,浮動小数点数
データフレームでのクレンジング
学習用データフレーム
各変量のクレンジング
記述統計
度数分布とヒストグラム
代表値:平均値,中央値,最頻値
四分位数,パーセンタイル
トリム平均
散布度
分散,標準偏差,平均偏差など
外れ値
四分位数と箱ひげ図
データの標準化
確率
確率の定義と定理
ベイズ統計
期待値
不偏推定量
1変量の記述統計
2変量の記述統計
散布図と近似直線
共分散と相関係数
単回帰分析
2変量統計の総合課題
分析結果の活用
データ分析結果についての考察
データ分析は結果が使えてこそ価値があります.難しい統計を使いこなす事が目的ではありません.本来の業務目的に沿った施策に効果が上がれば成功です.偏りの無いデータの入手を心がけデータの発生状況を知ることによって,誤りのない分析結果の解釈を提供することが基本です.
そのために,やさしい記述統計と分析プロセスの実行のためのPythonによる技術を身に付けてください.
なお,Pythonによる記述についてはJupyter notebookの文書をpdfにした添付資料がありますので,そちらを参照しながらご確認いただけますようお願いいたします.
また,Pythonについて不安のある方はUdemyの別コース「社会人のためのPython活用術」が一助になりますのでご利用をお勧めいたします.