確率
index:
必要なimport
import numpy as np import numpy.random as random import scipy as sp import pandas as pd from pandas import Series, DataFrame import matplotlib.pyplot as plt import matplotlib as mpl
データの準備
# dice_data = np.array([1, 2, 3, 4, 5, 6])
抽出します
# from numpy import random random.seed(0) # 抽出します print( random.choice(dice_data, 1))
結果
[5]
この試行結果を根元事象(基本事象)といいます
統計的確率
抽出した、各値の出現する確率を求める。
# 試行、1000回行う。 calc_steps = 1000 # seedの固定 random.seed(0) # 1〜6のデータの中から、抽出を実施 count_all_dice = random.choice(dice_data, calc_steps) count_all_dice # # 計算結果を入れる prob_data = np.array([]) # prob_data = np.array([]) for i in range(1, 7): n= float(len(count_all_dice[count_all_dice==i]) ) / float(calc_steps ) print(i, "ritu=", n ) prob_data = np.append(prob_data ,n) print(prob_data)
結果
(1, 'ritu=', 0.171) (2, 'ritu=', 0.157) (3, 'ritu=', 0.157) (4, 'ritu=', 0.183) (5, 'ritu=', 0.161) (6, 'ritu=', 0.171) [0.171 0.157 0.157 0.183 0.161 0.171]
ほぼ1/6に近いのがわかります。これは
統計的確率
という。
確立変数
ある変数の値をとる確率が存在する変数のことです。例えば、
さいころを投げて出る目は{1, 2, 3, 4, 5, 6}のいずれかであり、
それぞれの目が出る確率はであることから、さいころを投げて出る目は確率変数であると言えます。
確率分布:
確率変数がとる値とその値をとる確率の対応の様子を「確率分布」と言います。
https://bellcurve.jp/statistics/course/6596.html
ベルヌーイ分布:
結果が2種類しかない試行をベルヌーイ試行といいます。
1回のベルヌーイ試行において各事象が生じる確率の分布
prob_be_data = np.array([]) coin_data = np.array([0, 0, 0, 0, 0, 1, 1, 1]) # for i in np.unique(coin_data): n= (float(len(coin_data[coin_data==i]) ) / float(len(coin_data) )) print(i, " = ", n) prob_be_data = np.append(prob_be_data, n )
結果
(0, ' = ', 0.625) (1, ' = ', 0.375)
二項分布:
独立なベルヌーイ試行をn回繰り返します。
パラメータは順に、試行回数(n)、確率(p)、サンプル数
を示しています。
https://ja.wikipedia.org/wiki/%E4%BA%8C%E9%A0%85%E5%88%86%E5%B8%83
# 二項分布 random.seed(0) x = random.binomial(30, 0.5, 1000) plt.hist(x) plt.grid(True) plt.show()
ポアソン分布:
稀な事象が起きる確率の時、使われます。
https://bellcurve.jp/statistics/course/6984.html
# ポアソン分布 x = random.poisson(7, 1000) plt.hist(x) plt.grid(True)