作者:長行
時間:2019.03.21
統計學解釋
上次我們介紹了標準正態分佈概率計算的方法,現在我們來計算任意正態分佈的概率計算方法。
首先需要將正態分佈通過線性變換將它轉化爲標準正態分佈,其變換公式如下:
其中爲正態分佈的均值,爲標準差;其結果服從於均值爲0,標準差爲1的標準正態分佈。
實現代碼
1.引入計算標準正態分佈累積概率的代碼
import math
def st_normal_distribution(x):
#處理x<0(目標點在分佈中心左側)的情況
if x<0:
return 1-normal_distribution(-x)
if x==0:
return 0.5
#求標準正態分佈的概率密度的積分
s=1/10000
xk=[]
for i in range(1,x*10000):
xk.append(i*s)
integral=(fx_normal_distribution(0)+fx_normal_distribution(x))/2 #f(0)和f(x)各算一半
for each in xk:
integral+=fx_normal_distribution(each)
return 0.5+integral*s
def fx_st_normal_distribution(x):
return math.exp((-(x)**2)/2)/(math.sqrt(2*math.pi))
此函數計算了隨機變取量小於函數參數x的概率。
2.利用公式將任意正態分佈轉化爲標準正態分佈
def normal_distribution(x,u,s):
z=(x-u)/s
return st_normal_distribution(s)
normal_distribution(7.1,5,2)
結果:
0.9772498679618343
其中u爲任意正態分佈的均值,s爲標準差;此函數計算了任意正態分佈隨機變量取小於函數參數x的概率。
實際應用
正態分佈在統計學中的應用非常廣泛。無論隨機變量本身是如何分佈的,只要是大量的服從相同分佈的隨機變量之和,那這個和就近似服從正態分佈(李雅普諾夫定理)。
因此,我們可以將正態分佈應用到如下場景的概率計算中:肺活量、智商、考試成績、態度得分等等。