scipyによる確率分布と特殊関数
github
- jupyter notebook形式のファイルはこちら
google colaboratory
- google colaboratory で実行する場合はこちら
筆者の環境
筆者のOSはmacOSです。LinuxやUnixのコマンドとはオプションが異なります。
!sw_vers
ProductName: Mac OS X
ProductVersion: 10.14.6
BuildVersion: 18G2022
!python -V
Python 3.7.3
基本的なライブラリをインポートしそのバージョンを確認しておきます。
%matplotlib inline
%config InlineBackend.figure_format = 'svg'
import matplotlib
import matplotlib.pyplot as plt
import scipy
import numpy as np
print('matplotlib version :', matplotlib.__version__)
print('scipy version :', scipy.__version__)
print('numpy version :', np.__version__)
matplotlib version : 3.0.3
scipy version : 1.4.1
numpy version : 1.16.2
主要確率分布の使い所
データ分析などでは確率分布が様々な場所で利用されますが、簡単にまとめておきます。負の二項分などはマーケティングなどの分野でよく利用される確率分布になります。
名前 | 確率密度関数 | 確率変数 | params | $\displaystyle E[x]$ | $\displaystyle V[x]$ | 概要 |
---|---|---|---|---|---|---|
二項分布 | $\displaystyle \binom{n}{k}p^k\left(1-p\right)^{n-k}$ | $k$ | $n,p$ | $np$ | $np(1-p)$ | 成功確率$\displaystyle p $の試行を$n$回行い、その成功回数が従う確率分布 |
ポアソン分布 | $\displaystyle \dfrac{\lambda^ke^{-\lambda}}{k!}$ | $k$ | $\lambda$ | $\lambda$ | $\lambda$ | 単位時間あたり$\displaystyle \lambda$回起こる事象の、単位時間あたりの発生回数が従う確率分布 |
正規分布 | $\displaystyle \dfrac{1}{\sqrt{2\pi \sigma^2}}\exp\left(-\dfrac{\left(x-\mu\right)^2}{2\sigma^2}\right)$ | $x$ | $\mu,\sigma$ | $\mu$ | $\sigma^2$ | |
幾何分布 | $\displaystyle p\left(1-p\right)^k$ | $k$ | $p$ | $\displaystyle \dfrac{1-p}{p}$ | $\displaystyle \dfrac{1-p}{p^2}$ | 成功確率$\displaystyle p $の試行を行い、はじめての成功を得られるまでに必要な失敗の回数が従う確率分布 |
指数分布 | $\lambda e^{-\lambda x} $ | $\displaystyle x $ | $\displaystyle \lambda $ | $\displaystyle \dfrac{1}{\lambda} $ | $\displaystyle \dfrac{1}{\lambda^2} $ | 単位時間あたり$\displaystyle \lambda$回起こる事象において、始めて発生する時間が従う確率分布 |
負の二項分布 | $\displaystyle \binom{n+k-1}{k-1}p^n\left(1-p\right)^{k}$ | $k$ | $n,p$ | $\displaystyle \dfrac{n}{p}$ | $\displaystyle \dfrac{n\left(1-p\right)}{p^2}$ | 成功確率$\displaystyle p $の試行を行い、$n$回の成功を得られるまでに必要な失敗の回数が従う確率分布 (定義は他にもあり) |
ガンマ分布 | $\displaystyle \dfrac{x^{n-1}\lambda^{n}}{\Gamma\left(n\right)}e^{-\lambda x} $ for $x > 0$ | $x$ | $n,\lambda$ | $\displaystyle \dfrac{n}{\lambda}$ | $\displaystyle \dfrac{n}{\lambda^2}$ | 単位時間あたり$\displaystyle \lambda$回起こる事象において、$n$回発生する時間が従う確率分布 |