2021-05-12 14:32:11
MATLAB演示泊松分佈(Poisson Distribution)
本文利用MATLAB,結合賣西瓜的範例,演示了泊松分佈,解決了兩個問題:一是每天賣出k個西瓜的概率;二是每天準備多少西瓜夠買。
1
泊松分布用於描述單位時間內隨機事件發生的次數,其表示式如下圖,公式中的引數lamda是單位時間內事件平均發生的次數。
泊松分佈的期望和方差都是lamda。
2
下面舉例介紹泊松分佈,比如某西瓜店,週一賣出西瓜3個,週二賣出7個,周三賣出4個,週四賣出6個,周五賣出5個,周六賣出5個,周日賣出5個,這家店平均每天賣出西瓜5個。據此,這家店每天賣出k個西瓜的概率是多少?同時每天準備多少個西瓜夠買。
3
利用泊松分布來解決上面兩個問題:每天賣出k個西瓜的概率是多少?同時每天準備多少個西瓜夠買。
這個例子看成泊松分佈的話,表示為P(x=k)=5^k/k! exp(-5),這裡的lamda等於5,因為lamda就是期望值就是平均值。
啟動MATLAB,輸入如下程式碼:
close all; clear all; clc
% MATLAB演示泊松分佈(Poisson Distribution)
% 泊松分佈(Poisson Distribution):X~P(lamda)
lamda = 5;
n = 10;
f = zeros(1,n+1);
for k = 0:1:n
f(k+1) = lamda^k/factorial(k)*exp(-lamda);
end
x = 0:1:n;
bar(x,f,'r');
4
儲存和執行上述程式碼,得到如下圖形。可以看出,每天賣出4個和5個西瓜的概率最大,為0.1755。
5
那麼每天賣出0,1,2,3,4,5,6,7,8,9,10個西瓜的概率分布為多少呢?在命令列視窗,分布輸入x和f按回車,得到如下結果。即每天賣出0個西瓜的概率為0.0067,賣出1個西瓜的概率為0.0337,賣出2個西瓜的概率為0.0842,依次類推。這樣就解決了第一個問題: 每天賣出k個西瓜的概率是多少?
6
最後,解決第二個問題:每天準備多少個西瓜夠買。在命令列視窗分別輸入sum(f(1:7)),sum(f(1:8)),sum(f(1:9)),得到如下結果:
>> sum(f(1:7))=0.7622
>> sum(f(1:8))=0.8666
>> sum(f(1:9))=0.9319
也就是準備8個西瓜夠買,因為每天賣出8個以內西瓜的概率為0.9319,93%的情況下準備8個西瓜是夠的。需要注意的是,這裡的sum(f(1:9))是第1個f值到第9個f值的累加,而第1個f值是賣出0個西瓜的概率,第9個f值是賣出8個西瓜的概率。
相關文章