python繪製泊松分布(python畫泊松分布)

本文目錄一覽:

python沒有直接生成服從泊松分布隨機數的函數嗎?像r語言中rpois(n, lambda)直接就有結果的這種。

一般地,如果你已知一個連續隨機變數X的cdf F_X(x)(=P(X

一般地,如果你已知一個連續隨機變數X的cdf F_X(x)(=P(X

統計學入門級:常見概率分布+python繪製分布圖

如果隨機變數X的所有取值都可以逐個列舉出來,則稱X為離散型隨機變數。相應的概率分布有二項分布,泊松分布。

如果隨機變數X的所有取值無法逐個列舉出來,而是取數軸上某一區間內的任一點,則稱X為連續型隨機變數。相應的概率分布有正態分布,均勻分布,指數分布,伽馬分布,偏態分布,卡方分布,beta分布等。(真多分布,好恐怖~~)

在離散型隨機變數X的一切可能值中,各可能值與其對應概率的乘積之和稱為該隨機變數X的期望值,記作E(X) 。比如有隨機變數,取值依次為:2,2,2,4,5。求其平均值:(2+2+2+4+5)/5 = 3。

期望值也就是該隨機變數總體的均值。 推導過程如下:

= (2+2+2+4+5)/5

= 1/5 2 3 + 4/5 + 5/5

= 3/5 2 + 1/5 4 + 1/5 5

= 0.6 2 + 0.2 4 + 0.2 5

= 60% 2 + 20% 4 + 20%*5

= 1.2 + 0.8 + 1

= 3

倒數第三步可以解釋為值為2的數字出現的概率為60%,4的概率為20%,5的概率為20%。 所以E(X) = 60% 2 + 20% 4 + 20%*5 = μ = 3。

0-1分布(兩點分布),它的隨機變數的取值為1或0。即離散型隨機變數X的概率分布為:P{X=0} = 1-p, P{X=1} = p,即:

則稱隨機變數X服從參數為p的0-1分布,記作X~B(1,p)。

在生活中有很多例子服從兩點分布,比如投資是否中標,新生嬰兒是男孩還是女孩,檢查產品是否合格等等。

大家非常熟悉的拋硬幣試驗對應的分布就是二項分布。拋硬幣試驗要麼出現正面,要麼就是反面,只包含這兩個結果。出現正面的次數是一個隨機變數,這種隨機變數所服從的概率分布通常稱為 二項分布 。

像拋硬幣這類試驗所具有的共同性質總結如下:(以拋硬幣為例)

通常稱具有上述特徵的n次重複獨立試驗為n重伯努利試驗。簡稱伯努利試驗或伯努利試驗概型。特別地,當試驗次數為1時,二項分布服從0-1分布(兩點分布)。

舉個栗子:拋3次均勻的硬幣,求結果出現有2個正面的概率 。

已知p = 0.5 (出現正面的概率) ,n = 3 ,k = 2

所以拋3次均勻的硬幣,求結果出現有2個正面的概率為3/8。

二項分布的期望值和方差 分別為:

泊松分布是用來描述在一 指定時間範圍內或在指定的面積或體積之內某一事件出現的次數的分布 。生活中服從泊松分布的例子比如有每天房產中介接待的客戶數,某微博每月出現伺服器癱瘓的次數等等。 泊松分布的公式為 :

其中 λ 為給定的時間間隔內事件的平均數,λ = np。e為一個數學常數,一個無限不循環小數,其值約為2.71828。

泊松分布的期望值和方差 分別為:

使用Python繪製泊松分布的概率分布圖:

因為連續型隨機變數可以取某一區間或整個實數軸上的任意一個值,所以通常用一個函數f(x)來表示連續型隨機變數,而f(x)就稱為 概率密度函數 。

概率密度函數f(x)具有如下性質 :

需要注意的是,f(x)不是一個概率,即f(x) ≠ P(X = x) 。在連續分布的情況下,隨機變數X在a與b之間的概率可以寫成:

正態分布(或高斯分布)是連續型隨機變數的最重要也是最常見的分布,比如學生的考試成績就呈現出正態分布的特徵,大部分成績集中在某個範圍(比如60-80分),很小一部分往兩端傾斜(比如50分以下和90多分以上)。還有人的身高等等。

正態分布的定義 :

如果隨機變數X的概率密度為( -∞x+∞):

則稱X服從正態分布,記作X~N(μ,σ²)。其中-∞μ+∞,σ0, μ為隨機變數X的均值,σ為隨機變數X的標準差。 正態分布的分布函數

正態分布的圖形特點 :

使用Python繪製正態分布的概率分布圖:

正態分布有一個3σ準則,即數值分布在(μ-σ,μ+σ)中的概率為0.6827,分布在(μ-2σ,μ+2σ)中的概率為0.9545,分布在(μ-3σ,μ+3σ)中的概率為0.9973,也就是說大部分數值是分布在(μ-3σ,μ+3σ)區間內,超出這個範圍的可能性很小很小,僅占不到0.3%,屬於極個別的小概率事件,所以3σ準則可以用來檢測異常值。

當μ=0,σ=1時,有

此時的正態分布N(0,1) 稱為標準正態分布。因為μ,σ都是確定的取值,所以其對應的概率密度曲線是一條 形態固定 的曲線。

對標準正態分布,通常用φ(x)表示概率密度函數,用Φ(x)表示分布函數:

假設有一次物理考試特別難,滿分100分,全班只有大概20個人及格。與此同時語文考試很簡單,全班絕大部分都考了90分以上。小明的物理和語文分別考了60分和80分,他回家後告訴家長,這時家長能僅僅從兩科科目的分值直接判斷出這次小明的語文成績要比物理好很多嗎?如果不能,應該如何判斷呢?此時Z-score就派上用場了。 Z-Score的計算定義 :

即 將隨機變數X先減去總體樣本均值,再除以總體樣本標準差就得到標準分數啦。如果X低於平均值,則Z為負數,反之為正數 。通過計算標準分數,可以將任何一個一般的正態分布轉化為標準正態分布。

小明家長從老師那得知物理的全班平均成績為40分,標準差為10,而語文的平均成績為92分,標準差為4。分別計算兩科成績的標準分數:

物理:標準分數 = (60-40)/10 = 2

語文:標準分數 = (85-95)/4 = -2.5

從計算結果來看,說明這次考試小明的物理成績在全部同學中算是考得很不錯的,而語文考得很差。

指數分布可能容易和前面的泊松分布混淆,泊松分布強調的是某段時間內隨機事件發生的次數的概率分布,而指數分布說的是 隨機事件發生的時間間隔 的概率分布。比如一班地鐵進站的間隔時間。如果隨機變數X的概率密度為:

則稱X服從指數分布,其中的參數λ0。 對應的分布函數 為:

均勻分布的期望值和方差 分別為:

使用Python繪製指數分布的概率分布圖:

均勻分布有兩種,分為 離散型均勻分布和連續型均勻分布 。其中離散型均勻分布最常見的例子就是拋擲骰子啦。拋擲骰子出現的點數就是一個離散型隨機變數,點數可能有1,2,3,4,5,6。每個數出現的概率都是1/6。

設連續型隨機變數X具有概率密度函數:

則稱X服從區間(a,b)上的均勻分布。X在等長度的子區間內取值的概率相同。對應的分布函數為:

f(x)和F(x)的圖形分別如下圖所示:

均勻分布的期望值和方差 分別為:

如何在Python中實現這五類強大的概率分布

R編程語言已經成為統計分析中的事實標準。但在這篇文章中,我將告訴你在Python中實現統計學概念會是如此容易。我要使用Python實現一些離散和連續的概率分布。雖然我不會討論這些分布的數學細節,但我會以鏈接的方式給你一些學習這些統計學概念的好資料。在討論這些概率分布之前,我想簡單說說什麼是隨機變數(random variable)。隨機變數是對一次試驗結果的量化。

舉個例子,一個表示拋硬幣結果的隨機變數可以表示成

Python

1

2

X = {1 如果正面朝上,

2 如果反面朝上}

隨機變數是一個變數,它取值於一組可能的值(離散或連續的),並服從某種隨機性。隨機變數的每個可能取值的都與一個概率相關聯。隨機變數的所有可能取值和與之相關聯的概率就被稱為概率分布(probability distributrion)。

我鼓勵大家仔細研究一下scipy.stats模塊。

概率分布有兩種類型:離散(discrete)概率分布和連續(continuous)概率分布。

離散概率分布也稱為概率質量函數(probability mass function)。離散概率分布的例子有伯努利分布(Bernoulli distribution)、二項分布(binomial distribution)、泊松分布(Poisson distribution)和幾何分布(geometric distribution)等。

連續概率分布也稱為概率密度函數(probability density function),它們是具有連續取值(例如一條實線上的值)的函數。正態分布(normal distribution)、指數分布(exponential distribution)和β分布(beta distribution)等都屬於連續概率分布。

若想了解更多關於離散和連續隨機變數的知識,你可以觀看可汗學院關於概率分布的視頻。

python沒有直接生成服從泊松分布隨機數的函數嗎

首先是泊松分布,這是一個離散型的隨機變數分布,比較好弄,此外例如考察一些到達事件的概率時,通常服從泊松分布,因此該分布相當實用。在開始編寫之前,先感謝知乎一位大神的科普知識,假設有一個服從均勻分布的隨機變數,u~U[0,1],F(x)為隨機變數x的累計分布函數,那麼F-1(u)的變數服從F分布,即F的逆函數是服從F的隨機變數。代碼如下:

[java] view plain copy print?

span style=”white-space:pre” /spanprivate static int getPossionVariable(double lamda) {

int x = 0;

double y = Math.random(), cdf = getPossionProbability(x, lamda);

while (cdf y) {

x++;

cdf += getPossionProbability(x, lamda);

}

return x;

}

private static double getPossionProbability(int k, double lamda) {

double c = Math.exp(-lamda), sum = 1;

for (int i = 1; i = k; i++) {

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/303859.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-31 11:50
下一篇 2024-12-31 11:50

相關推薦

  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • 蝴蝶優化演算法Python版

    蝴蝶優化演算法是一種基於仿生學的優化演算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化演算法Python版…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29

發表回復

登錄後才能評論