用Python學分析 - 二項分布


 

二項分布(Binomial Distribution)
對Bernoulli試驗序列的n次序列,結局A出現的次數x的概率分布服從二項分布
- 兩分類變量並非一定會服從二項分布
- 模擬伯努利試驗中n次獨立的重復,每次試驗成功的概率為pi

特征值
- 均值(數學期望)和方差:
  - 不同的值,二項式分布有着不同的形態和偏度值
  - pi值越大,呈負偏度;pi值越小,呈正偏度
  - 當 pi = 0.5時,分布是對稱的
  - 當 n * pi 與 n * (1-pi) >= 5 時,樣本比例p的抽樣分布趨向於正態分布
- 當 n 較大,pi不太極端時,可以采用正態近似方法計算概率分布規律

應用

- 博彩行業的規則設定
- 正常值范圍的設定(例:醫療行業)

# 對二項分布概念的理解及計算

 1 # 對二項分布概念的理解及計算
 2 
 3 from scipy.stats import binom
 4 
 5 pi = .3; n = 10
 6 k = 2; m = 8
 7 
 8 # 求成功次數為i的概率
 9 pk = 0
10 for i in range(n):
11     p = binom( n, pi ).pmf( i ) 
12     if i <= k:
13         pk += p
14     print( 'P(x = {0:d}) = {1:.4f}'.format( i , p ))
15 
16 # 求成功小於k次的概率
17 print('-'*20)
18 p = binom( n, pi ).cdf( k )
19 print( 'P(x <= {0:d}) = {1:.4f}'.format( k , p ))
20 print( '比較累加值:', pk)
21 
22 # 求成功大於k次,小於m次的概率
23 print('-'*20)
24 p = binom( n, pi ).cdf( m ) - binom( n, pi ).cdf( k )
25 print( 'P({0:d} < x <= {1:d}) = {2:.4f}'.format( k , m, p ))
View Code

運行結果:

 

# 比較:p對結果的影響

 1 import numpy as np
 2 from scipy.stats import binom
 3 import matplotlib.pyplot as plt
 4 
 5 num_trials = 60
 6 x = np.arange(num_trials)
 7 
 8 plt.plot(x, binom(num_trials, 0.2).pmf(x), 'o-', label='p=0.2')
 9 plt.plot(x, binom(num_trials, 0.5).pmf(x), 'o-', label='p=0.5')
10 plt.plot(x, binom(num_trials, 0.7).pmf(x), 'o-', label='p=0.7')
11 plt.legend()
12 plt.title( '二項分布:p對結果的影響' )
13 plt.show()
14 print('當p不同時,成功m次的能性的最大值都出現在均值處,對應概率為n*p')
View Code

結果:

# 比較:n對結果的影響

 1 import numpy as np
 2 from scipy.stats import binom
 3 import matplotlib.pyplot as plt
 4 
 5 n1 = 10
 6 n2 = 15
 7 n3 = 20
 8 p = 0.5
 9 x = np.arange( max([n1,n2,n3])+1 )
10 
11 plt.plot( x, binom.pmf( x, p = 0.5, n = n1), 'o-', label='n=10')
12 plt.plot( x, binom.pmf( x, p = 0.5, n = n2), 'o-', label='n=15')
13 plt.plot( x, binom.pmf( x, p = 0.5, n = n3), 'o-', label='n=20')
14 plt.legend()
15 plt.title( '二項分布:n對結果的影響' )
16 plt.show()
17 print('當N不同時,成功m次的可能性的最大值都出現在均值處,對應概率為n*p。')
View Code

結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM