使用 Python 在统计学中显示正态分布

pythonserver side programmingprogramming

在问题陈述中,我们需要使用 Python 及其库显示正态分布。在本教程中,我们将讨论什么是正态分布以及如何使用 Python 绘制正态分布。

统计学中的正态分布是什么?

在统计学中,正态分布是一种流行的概率分布。它经常用作自然发生事件的模型,并且它具有钟形曲线作为其不同特征。它也被称为高斯分布。

我们可以使用 Python 中的随机函数创建符合正态分布的随机数据点来显示 ND。随后,可以使用所获数据的直方图来显示钟形曲线。

上述问题的逻辑

为了解决给定的问题并使用 Python 显示正态分布,我们将使用 Numpy、Matplotlib 和 scipy.stats 等 Python 库。这些库将使我们的任务变得简单,我们将能够轻松显示正态分布。我们必须设置平均值和标准差的值。然后计算概率密度函数并生成 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() 方法显示曲线。

# 绘制窗口并定义标签
mt_plt.xlabel('x')
mt_plt.ylabel('Probability Density')
mt_plt.title('Normal Distribution')

# 显示图
mt_plt.show()

示例

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

# 设置平均值和标准差的值
mean = 2
std_dev = 5

# 生成 x 坐标值
x = nmp.linspace(mean - 5 * std_dev, mean + 5 * std_dev, 1000)

# 计算 y 的相应值ND 的 PDF 帮助
y = norm.pdf(x, mean, std_dev)

# 绘制钟形曲线
mt_plt.plot(x, y)

# 绘制窗口并定义标签
mt_plt.xlabel('x')
mt_plt.ylabel('概率密度')
mt_plt.title('正态分布')

# 显示图
mt_plt.show()

输出

复杂性

在 Python 中显示正态分布的时间复杂度为 O(n),这里 n 是范围内的值的数量。因为我们已经生成了 x 的值范围,这需要 O(n) 时间,并且计算概率密度函数也需要 O(n) 时间,这是造成这种时间复杂度的主要原因。

结论

在我们的文章中,我们讨论了正态分布,并展示了分布的演示。我们已经使用库在 Python 中创建了显示分布的逻辑和算法,并计算了其时间复杂度。


相关文章


有用资源