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/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

发表回复

登录后才能评论