stats.norm.pdf詳解

一、stats.norm.pdf(a)


import numpy as np
from scipy.stats import norm
import matplotlib.pyplot as plt

# 設定均值和標準差
mu = 0
sigma = 1

# 生成從-5到5的等差數列作為x軸值
x = np.linspace(-5, 5, num=1000)

# 接收x軸和均值、標準差,輸出y軸值
y = norm.pdf(x, mu, sigma)

# 繪製概率密度函數曲線
plt.plot(x, y)

# 添加x軸和y軸描述
plt.xlabel('x')
plt.ylabel('pdf(x)')

# 添加標題
plt.title('Normal PDF')

# 顯示圖像
plt.show()

stats.norm.pdf(a)是scipy庫中給定一組參數的情況下,計算正態分布函數的概率密度函數的函數。其中,a表示x軸的取值範圍,也可以通過numpy生成等差數列來實現。

在以上代碼中,我們設定均值為0、標準差為1,將x軸的取值範圍設定在-5到5之間,生成num個等差數列作為x軸的取值。同時,將x軸的取值、均值、標準差作為參數傳入stats.norm.pdf函數中,得到模擬數據的y軸值,繪製出正常分布概率密度函數的曲線。通過plt.show()方法,將圖像顯示出來。

二、stats.norm.pdf python


import numpy as np
from scipy.stats import norm

# 設定均值和標準差
mu = 0
sigma = 1

# 生成從-5到5的等差數列作為x軸值
x = np.linspace(-5, 5, num=1000)

# 接收x軸和均值、標準差,輸出y軸值
y = norm.pdf(x, mu, sigma)

# 將x軸和y軸的值列印出來
print("x軸的取值:\n", x)
print("y軸的取值:\n", y)

stats.norm.pdf也可以用來計算某個數值點上正態分布的概率密度函數值。通過將此方法應用於給定的x軸點,我們可以計算出每個點的y值,從而得到正態分布概率密度函數的曲線。

以上代碼中,我們同樣設定均值為0、標準差為1,再生成等差數列作為x軸的取值範圍。將x軸每個點的取值、均值、標準差作為參數,得到模擬數據的y軸值。同時,我們使用print()函數將模擬數據列印出來。

三、stats.norm.pdf的參數選取

在stats.norm.pdf中,除了x軸的取值範圍、均值、標準差之外,還有許多其他參數可以選擇。下面列舉常見的參數:

1. loc:均值參數,即正態分布的中心

2. scale:標準差參數

3. size:隨機變數數量,可以用於模擬樣本分布

4. random_state:確定隨機數生成器的種子

以下是一個綜合使用以上參數的示例代碼:


import numpy as np
from scipy.stats import norm

# 設定均值和標準差
mu = 0
sigma = 1

# 生成100個符合正態分布的隨機數
samples = norm.rvs(loc=mu, scale=sigma, size=100, random_state=42)

# 計算概率密度函數曲線
x = np.linspace(-5, 5, num=1000)
pdf = norm.pdf(x)

# 繪製概率密度函數曲線和樣本分布圖
import seaborn as sns
sns.distplot(samples, bins=10, kde=False, norm_hist=True)
plt.plot(x, pdf)

# 添加x軸和y軸描述
plt.xlabel('x')
plt.ylabel('pdf(x)')

# 添加標題
plt.title('Normal PDF and Samples')

# 顯示圖像
plt.show()

以上代碼中,首先使用norm.rvs()方法生成100個符合標準正態分布的隨機數,並將均值、標準差、隨機數數量、隨機數種子作為參數傳入方法中。然後,使用np.linspace()方法生成x軸的等差數列,將這些數傳入stats.norm.pdf()方法中,得到模擬數據的y軸值。

接下來,我們使用seaborn庫的distplot()方法來繪製樣本的實際分布情況,同時使用plot()方法將正態分布概率密度函數的曲線繪製在上面。注意,在繪製樣本分布圖時,我們將kde參數設為False,norm_hist參數設為True,這是為了將樣本分布顯示為直方圖,並將概率密度標準化為1。

最後,添加軸標籤和標題,使用plt.show()方法顯示圖像。

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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-06 09:47
下一篇 2025-01-06 09:47

相關推薦

  • Python基礎教程第三版PDF下載

    熟練掌握Python編程語言可以讓你輕鬆地用代碼解決很多問題,Python基礎教程第三版是一本適合初學者的Python教程。本文將從幾個方面詳細介紹Python基礎教程第三版PDF…

    編程 2025-04-29
  • 使用Spire.PDF進行PDF文檔處理

    Spire.PDF是一款C#的PDF庫,它可以幫助開發者快速、簡便地處理PDF文檔。本篇文章將會介紹Spire.PDF庫的一些基本用法和常見功能。 一、PDF文檔創建 創建PDF文…

    編程 2025-04-29
  • Python零基礎PDF下載

    本文將為大家介紹如何使用Python下載PDF文件,適合初學者上手實踐。 一、安裝必要的庫 在Python中,我們需要使用urllib和requests庫來獲取PDF文件的鏈接,並…

    編程 2025-04-29
  • 智能風控 Python金融風險PDF

    在金融交易領域,風險控制是一項重要任務。智能風控是指通過人工智慧技術和演算法模型,對金融交易進行風險識別、風險預警、風險控制等操作。Python是一種流行的編程語言,具有方便、易用、…

    編程 2025-04-29
  • Python編程與數據分析應用PDF

    Python編程是一門功能強大的編程語言,其易讀易寫、可擴展性強等優點使得它在各個領域都有著廣泛的應用。而數據分析也是當今各行各業的基本需求,Python語言通過優秀的數據分析庫也…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • 文本數據挖掘與Python應用PDF

    本文將介紹如何使用Python進行文本數據挖掘,並將著重介紹如何應用PDF文件進行數據挖掘。 一、Python與文本數據挖掘 Python是一種高級編程語言,具有簡單易學、代碼可讀…

    編程 2025-04-28
  • Python生成PDF文檔

    Python是一門廣泛使用的高級編程語言,它可以應用於各種領域,包括Web開發、數據分析、人工智慧等。在這些領域的應用中,有很多需要生成PDF文檔的需求。Python有很多第三方庫…

    編程 2025-04-28
  • 使用Python為PDF添加書籤

    Python是一種強大靈活的編程語言,它支持大量的庫和模塊,其中就包括pdf模塊。使用Python處理PDF文件可以有效地提高處理效率和減輕工作量。其中,添加書籤是PDF處理的常見…

    編程 2025-04-28
  • 電子琴入門教程pdf下載

    作為一名電子琴愛好者,了解電子琴的基礎知識是必要的,而電子琴入門教程PDF的下載則是學習電子琴知識的好方法。 一、找到可靠的PDF下載網站 在互聯網上能夠找到很多電子琴入門教程的P…

    編程 2025-04-27

發表回復

登錄後才能評論