使用 Python 展示統計學中的正態分佈


在問題陳述中,我們需要使用 Python 及其庫來展示正態分佈。在本教程中,我們將討論什麼是正態分佈以及如何使用 Python 繪製它。

什麼是統計學中的正態分佈?

在統計學中,正態分佈是一種流行的機率分佈。它經常作為自然發生的事件的模型,其不同的特徵是鐘形曲線。它也稱為高斯分佈。

我們可以使用 Python 中的隨機函式建立符合正態分佈的隨機資料點以顯示 ND。之後,可以使用獲得資料的直方圖來顯示鐘形曲線。

上述問題的邏輯

為了解決給定的問題並使用 Python 展示正態分佈,我們將使用 Python 庫,如 Numpy、Matplotlib 和 scipy.stats。這些庫將使我們的任務變得簡單,並且我們將能夠輕鬆地展示正態分佈。我們必須設定均值和標準差的值。然後計算機率密度函式並生成 x 和 y 的座標。並使用 matplotlib 繪製直方圖。

演算法

  • 步驟 1 - 首先匯入 Python 的必要庫。在我們的例子中,我們匯入 Numpy、Matplotlib 和 Scipy 庫來演示正態分佈。

import numpy as nmp
import matplotlib.pyplot as mt_plt
from scipy.stats import norm
  • 步驟 2 - 接下來,初始化均值和標準差的值。

mean = 2
std_dev = 5
  • 步驟 3 - 現在我們將使用 linspace 生成 x 座標的值。

x = nmp.linspace(mean - 5 * std_dev, mean + 5 * std_dev, 1000)
  • 步驟 4 - 獲取 x 值後,我們將使用正態分佈的機率密度函式生成 y 座標值。

y = norm.pdf(x, mean, std_dev)
  • 步驟 5 - 現在我們將使用 plot() 函式繪製鐘形曲線。

mt_plt.plot(x, y)
  • 步驟 6 - 然後我們將繪製視窗併為 x 軸和 y 軸提供標籤。並使用 show() 方法顯示曲線。

# Plot the window and define the labels
mt_plt.xlabel('x')
mt_plt.ylabel('Probability Density')
mt_plt.title('Normal Distribution')

# Show the plot
mt_plt.show()

示例

import numpy as nmp
import matplotlib.pyplot as mt_plt
from scipy.stats import norm

# Set the values of mean and standard deviation
mean = 2
std_dev = 5

# Generate x-coordinate values
x = nmp.linspace(mean - 5 * std_dev, mean + 5 * std_dev, 1000)

# calculate the respective values of y with the help of PDF of ND
y = norm.pdf(x, mean, std_dev)

# Plot the bell-shaped curve
mt_plt.plot(x, y)

# Plot the window and define the labels
mt_plt.xlabel('x')
mt_plt.ylabel('Probability Density')
mt_plt.title('Normal Distribution')

# Show the plot
mt_plt.show()

輸出

複雜度

在 Python 中顯示正態分佈的時間複雜度為 O(n),其中 n 是範圍內的值的數量。因為我們生成了 x 的值範圍,這需要 O(n) 時間,並且計算機率密度函式也需要 O(n) 時間,這是導致這種時間複雜度的主要原因。

結論

在我們的文章中,我們討論了正態分佈,並展示了該分佈的演示。我們建立了使用庫在 python 中顯示分佈的邏輯和演算法,並計算了其時間複雜度。

更新於:2023 年 10 月 18 日

198 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.