日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 二项分布

發布時間:2023/12/20 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 二项分布 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、定義

1.1 0-1分布

  • 也稱伯努力分布
    若隨機變量X只有兩個可能的取值0和1,其概率分布為
    P(X=xi)=pxi(1?p)1?xi,xi=0,1P(X=x_{i}) = p^{x_{i}}(1-p)^{1-x_{i}} \qquad,x_{i}=0,1 P(X=xi?)=pxi?(1?p)1?xi?,xi?=0,1

1.2 二項分布

  • 二項分布是指在只有兩個結果的n次獨立的伯努利試驗中,所期望的結果出現次數的概率,記
    B(n,k,p)=Cnkpk(1?p)n?kB (n,k,p)= C_{n}^{k} p^{k} (1-p)^{n-k} B(n,k,p)=Cnk?pk(1?p)n?k
    其中,n表示試驗次數,k表示出現某個結果的次數,Cnk=n(n?1)..(n?k+1)k(k?1)...1=n!(n?k)!k!C_{n}^{k}=\frac{n(n-1)..(n-k+1)}{k(k-1)...1} = \frac{n!}{(n-k)!k!}Cnk?=k(k?1)...1n(n?1)..(n?k+1)?=(n?k)!k!n!?

二、案例

???? 在很多工廠里,通常都會跟零件供應商約定供貨合格率,并對每批供貨進行抽檢,就是所謂的IQC。設約定的合格品率為97%(p),如果每批隨機抽10件(n),那么抽出1件(k)不合格時,整批的零件的合格率是不是達不到97%?
???? 根據題意,p=0.97,n=10,k=9,據此算出10個樣品中有9個合格品的概率是
B(10,9,0.97)=C109p9(1?0.97)10?9=0.228B (10,9,0.97)= C_{10}^{9} p^{9} (1-0.97)^{10-9} = 0.228 B(10,9,0.97)=C109?p9(1?0.97)10?9=0.228
???? 反過來,如果考慮不合格品率,p=0.03,n=10,k= 1,據此計算出10個樣品中有1個不合格品的概率是
B(10,1,0.03)=C101p1(1?0.03)10?1=0.228B (10,1,0.03)= C_{10}^{1} p^{1} (1-0.03)^{10-1} = 0.228 B(10,1,0.03)=C101?p1(1?0.03)10?1=0.228
???? 結果是一樣的。由此可見,10個樣品中有1個不合格品的概率還是很大的,因此不能說這批零件不合格。

那抽出2個不合格的呢? B(10,8,0.97)=C108p8(1?0.97)10?8=0.0317B (10,8,0.97)= C_{10}^{8} p^{8} (1-0.97)^{10-8} = 0.0317B(10,8,0.97)=C108?p8(1?0.97)10?8=0.0317
???? 因此如果10個樣品中有2個或以上的不合格品,則整批的零件合格率肯定達不到97%,可以整批退貨。
???? 如果約定的合格率是99.5%,則出現0個、1個、2個不合格品的概率分別為0.951、0.0478、0.001,如此10個只要抽出1個不合格品就可以整批退貨了。

三、python 實現

  • 代碼中的情況對應上文案例
from scipy.special import combdef GetBinomial(n,k,p):'''功能:計算給定參數的二項分布值傳入:n(實驗總次數)、k(事件出現的次數)、p(事件出現的概率)輸出:二項分布值'''C = comb(n,k) # 計算所有組合數量B = C * p**k * (1-p)**(n-k)return Bb1 = GetBinomial(10,9,0.97) # 情況1 b2 = GetBinomial(10,1,0.03) # 情況2 b3 = GetBinomial(10,10,0.995) # 情況3 b4 = GetBinomial(10,9,0.995) # 情況4 b5 = GetBinomial(10,8,0.995) # 情況5 b6 = GetBinomial(10,7,0.995) # 情況6print("情況1:",b1) print("情況2:",b2) print("情況3:",b3) print("情況4:",b4) print("情況5:",b5) print("情況6:",b6)

參考:統計基礎篇之十:怎么理解二項分布

總結

以上是生活随笔為你收集整理的python 二项分布的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。