Pythonによるデータ分析・機械学習ブログ

Pythonによるデータの前処理・グラフ化、機械学習、統計解析、画像処理、Webスクレイピング、自然言語処理の基礎について紹介していきます。

MENU

【第6回】scipyを用いたQ-Qプロット描画、シャピロ・ウィルク検定、コルモゴロフ・スミルノフ検定による正規性の確認

はじめに

 データ分析の内、統計解析をする際に重要な項目の一つとして挙げられるのはデータの正規性です。正規分布に従っているか否かで検定方法がパラメトリックかノンパラメトリックかが決まってきます。そのため、基本的に検定を行う際にはまずデータの正規性を確認します。

 正規性を確認する方法には、以下の手法があります。

  • Q-Qプロット
  • シャピロ・ウィルク検定
  • コルモゴロフ・スミルノフ検定

シャピロ・ウィルク検定については、こちらの記事で紹介しています。Q-Qプロットは視覚的に評価する手法で、シャピロ・ウィルク検定とコルモゴロフ・スミルノフ検定は定量的に評価する手法です。データ数が少ない場合にはシャピロ・ウィルク検定が、データ数が多い場合には、コルモゴロフ・スミルノフ検定が用いれます。

 本記事では、scipyを用いたQ-Qプロット描画、シャピロ・ウィルク検定、コルモゴロフ・スミルノフ検定による正規性の確認方法を紹介します。

Aidemy Premium

 

1. Q-Qプロット描画

X軸に実測値、Y軸に実測値が正規分布に従う場合の期待値(累積確率)を置いた図です。こちらのプロットが直線的であれば正規分布に従っていると考えられます。

Q-Qプロットはscipy.stats.probplot()を用いて以下の様に描画します。ここでのデータは平均値0、標準偏差1の正規分布に従う1000個のデータです。

Q-Qプロットは以下の図のようになります。赤い直線に沿って青い点がプロットされているのがわかると思います。こちらの青い点が赤い線付近にプロットされていれば正規性があり、外れた点があれば正規性がないと考えられます。

2. シャピロ・ウィルク検定

シャピロ・ウィルク検定では、scipy.stats.shapiro()を使用します。返り値のs,pはそれぞれ検定統計量とp値です。p値が0.05以上であれば正規性があります。以下の例では、p値が0.48であることから正規性があると判断できます。

 

3. コルモゴロフ・スミルノフ検定

コルモゴロフ・スミルノフ検定では、scipy.stats.kstest()を用います。返り値のs,pはそれぞれ検定統計量とp値です。p値が0.05以上であれば正規性があります。以下の例では、p値が0.36であることから正規性があると判断できます。

 

4. 活用例

シャピロ・ウィルク検定を活用した事例を以下の記事で紹介しています。

chantastu.hatenablog.com

chantastu.hatenablog.com

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

 本記事では、scipyを用いたQ-Qプロット描画、シャピロ・ウィルク検定、コルモゴロフ・スミルノフ検定による正規性の確認方法を紹介しました。統計解析の際にこれらの手法を活用してみてください。