1. 程式人生 > >均勻分佈生成標準正態分佈 python

均勻分佈生成標準正態分佈 python

    一個分佈的隨機變數可通過把服從(0,1)均勻分佈的隨機變數代入該分佈的反函式的方法得到。均勻分佈的反函式卻求不了。所以我們就要尋找其他的辦法。

    由均勻分佈生成標準正態分佈主要有3種方法:Box–Muller演算法中心極限定理Kinderman and Monahan method。

接下來將分別介紹三種演算法的python實現

1.Box–Muller演算法

    Box–Muller演算法實際上是依據瑞利分佈來求標準正態分佈的反函式。我們知道標準正太分佈的反函式是求不了的,但標準正態分佈經過極座標變換後卻是可以求得反函式的。

1.1.理論基礎:

這裡面,由生成服從的隨機變數,

同時,由生成服從均勻分佈的隨機變數。

因為,所以由得到服從標準正態分佈的隨機變數。

1.2.python程式碼:

1.3.Excel直方圖:

2.中心極限定理

2.1.理論基礎:

  獨立同分布、且數學期望和方差有限的隨機變數序列的標準化和以標準正態分佈為極限

2.2.python程式碼:

2.3.Excel直方圖:

3.Kinderman and Monahan method

這個是python中random庫裡生成正態分佈隨機變數的方法。在這也貼出來大家共同學習討論。

3.1.python程式碼:

3.2.Excel正方圖:


理論依據來源於《概率論基礎》李賢平

歡迎指正