python随机数据随概率分布_概率分布及其Python实现
一、學習概率分布有什么用?很多現實中的分布都來自幾種概率分布。對個人生活和工作選擇非常有幫助。
知道某件事發生的概率對我們作出數據分析決策很有幫助。有時候計算概率很簡單,有時候計算概率很復雜,概率分布是幫助我們解決特定問題下的萬能模版。
在經濟學習領域,概率分布對于數據的認識有非常重要的作用,不管是有效數據還是噪音數據,如果知道了數據集分布,在機器學習算法選擇和建模過程有很大幫助。
二、概率分布
1.理解概率分布之前需要了解的概念
1)隨機事件
在統計概率中我們用事件表示某件事情。
在一定條件下,可能發生可能不發生的事件叫隨機事件。如拋硬幣。
2)如何量化隨機事件——隨機變量
隨機變量:是一個量化隨機事件的函數,它將隨機事件每個可能出現的結果賦予一個數字。數字是隨機的,可以取任何一個值。如拋硬幣:正面朝上用1表示,反面朝上用0表示。通常用X表示。
隨機變量有兩種類型:離散隨機變量和連續隨機變量
離散隨機變量可能出現的結果都是可以列出來的,如拋硬幣,可能出現兩種結果,正面朝上1,反面朝上0。
連續隨機變量中變量有無限個結果,如明天下雨雨量的毫米數。
將這兩種隨機變量分隔開,是因為他們有不同的概率分布。
2.概率分布
分布:數據在統計圖中的形狀叫它的分布。
概率分布:將隨機變量、概率、分布組合起來的一種表現手段。就是用統計圖來表示隨機變量所有可能結果對應發生的概率。橫軸是隨機事件所有可能的結果(即隨機變量的對應的數值),縱軸是對應每個結果發生的概率。
根據隨機變量類型的不同,概率分布分為離散概率分布和連續概率分布。
我們可以根據概率計算公式計算這兩種隨機變量數字的概率。
離散概率分布計算公式用概率質量函數PMF(Probability Mass Function):之所以叫做質量,是因為離散是點,默認體積為1.
連續概率分布計算公式用概率密度函數PDF(Probability Density Function):之所以叫密度,是因為連續隨機變量概率計算的是面積。
1)離散概率分布
包括伯努利分布、二項分布、幾何分布、泊松分布
伯努利分布:
伯努利實驗:同樣的條件下進行的相互獨立的實驗,特點是實驗的可能結果只有兩種。成功/失敗。如果隨機變量X是一次伯努利實驗,則這個隨機變量就符合伯努利分布。
用概率質量函數(PMF)計算伯努利分布的概率,成功概率記作P,失敗概率則為1-P。
二項分布:發生次數是固定的,感興趣的是成功的次數。二項表示隨機事件的有兩種可能的結果,成功/失敗。
特點:
1.做某件事的次數是固定的,次數用n表示,n次某件事是相互獨立的。
2.每一次事件都有兩種可能的結果,成功/失敗
3.每一次成功的概率都相等,成功的概率用p表示
4.想知道成功k次的概率是多少。
二項分布的期望和方差:
期望=np (預期成功多少次)
方差=np(1-p)(數據波動大小)
幾何分布:想要知道嘗試某件事情多次能取得第一次成功的概率。(二項分布的孿生兄弟)
特點:
1.做某件事的次數是固定的,次數用n表示,n次某件事是相互獨立的。
2.每一次事件都有兩種可能的結果,成功/失敗
3.每一次成功的概率都相等,成功的概率用p表示
4.想知道第k次做某件事,才取得第1次成功的概率是多少。
幾何分布的期望和方差:
期望E=1/p (預期多少次后取得第1次成功)
方差=(1-p)/p的平方 (數據波動大小)
泊松分布:某個時間范圍內,發生某件事情k次的概率有多大。(如一天內中獎的次數,一個月內機器發生故障的次數,一段道路發生交通事故的次數)
泊松分布的形狀會隨著平均值的不同而有所變化。
特點:
1.事件是獨立事件
2.任意相同的時間范圍內,事件發生的概率相同。
3.你想知道某個時間范圍內,發生某件事情k次的概率是多大。
要計算泊松分布的概率首先要知道給定時間范圍內某件事情發生的平均次數。
泊松分布的期望和方差都等于平均值μ。
2)連續概率分布
包括正態分布和冪律分布
正態分布趨向中間,冪律分布趨向極端。
正態分布:數據集像一只倒扣的鐘,兩頭低中間高,左右對稱,大部分數據集中在中間的平均值,小部分在兩端,例如上班的薪水。
冪律分布:在有些自然和商業現象中因為網絡效應導致強者越強,贏家通吃,這時的結果會呈現出尖刀型的冪律分布。刀尖占據著大部分的財富。
如果想離財務自由更近,需要在給別人打工的同時,建立自己的冪律分布商業模式。
正態分布是商業世界中最常見的一種分布,當影響結果的因素特別多,沒有哪個因素可以完全左右這個結果時,結果通常呈現正態分布。
有這兩個工具就可以看清很多商業現象。
正態分布的商業現象:1)員工績效的活力曲線 2)產品質量 3)快速找到停車位 4)智商
冪律分布商業現象:1)家庭收入 2)城市GDP
正態分布特異功能:預測數據的位置
68.2%的數據處于一個標準差內,95.5%的數據處于2個標準差內,99.7%的數據處于3個標準差內。
正態分布概率計算:
正態分布的概率是正態分布圖下方一定數值范圍內的面積。
1.確定概率范圍,明確要求正態分布圖中哪一部份的面積。
2.求對應面積的標準分。知道所在數據集的平均值和標準差,就可以算出對應的標準分。標準分就是距離平均值有幾個標準差。
3.查找Z表格(標準分與概率值對應關系的表)對應的概率值 。但Z表格給出的是小于標準分的概率值,如果要求大于標準分的面積,用1減去小于標準分的概率值。
三、概率分布的Python實現
套路:
1.伯努利分布
例:拋硬幣實驗
拋硬幣實驗1次,正面朝上記作1,翻面朝上記作0。
#導入包
import scipy.stats as stats
import numpy as np
import matplotlib.pyplot as plt
#定義隨機變量
X=np.arange(0,2,1)
#求各隨機變量的概率
p=0.5
pList=stats.bernoulli.pmf(X,p)
#伯努利分布概率圖
plt.plot(X,pList,marker='o',linestyle='None')
plt.vlines(X,0,pList)
plt.xlabel('隨機變量:拋硬幣1次')
plt.ylabel('概率')
plt.title('伯努利分布:p=%.2f'% p)
plt.show()
2.二項分布
例:5次拋硬幣,正面朝上的次數。
#定義隨機變量
n=5#拋硬幣的次數
p=0.5#正面朝上的概率
X=np.arange(0,6,1)
#求各隨機變量的概率
pList=stats.binom.pmf(X,n,p)
#繪圖
plt.plot(X,pList,marker='o',linestyle='None')
plt.vlines(X,0,pList)
plt.xlabel('隨機變量:拋硬幣正面朝上次數')
plt.ylabel('概率')
plt.title('二項分布:n=%i,p=%.2f'% (n,p))
plt.show()
3.幾何分布
例:首次表白成功的概率
#定義隨機變量
k=5
p=0.6
X=np.arange(1,k+1,1)
#計算各隨機變量的概率
pList=stats.geom.pmf(X,p)
#繪圖
plt.plot(X,pList,marker='o',linestyle='None')
plt.vlines(X,0,pList)
plt.xlabel('隨機變量:表白第k次才首次成功')
plt.ylabel('概率')
plt.title('幾何分布:p=%.2f'% p)
plt.show()
4.泊松分布
例:已知一天內某路口平均每天發生2次事故。求該路口一天內發生4次事故的概率。
#定義隨機變量
mu=2
k=4#次數,想知道一天內發生4次事故的概率,包含了發生0次,1次,2次,3次,4次
X=np.arange(0,k+1,1)
#計算概率
pList=stats.poisson.pmf(X,mu)
#繪圖
plt.plot(X,pList,marker='o',linestyle='None')
plt.vlines(X,0,pList)
plt.xlabel('隨機變量:某路口發生k次事故')
plt.ylabel('概率')
plt.title('泊松分布:平均值mu=%.2f'% mu)
plt.show()
總結
以上是生活随笔為你收集整理的python随机数据随概率分布_概率分布及其Python实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 430单片机实现三人投票表决器_长虹KF
- 下一篇: java解压zip异常_java解压zi