python生成一组符合正态分布的数据_python numpy 生成一个服从多元正态分布的数组...

本文介绍了标准正态分布、一维及二维正态分布的概率密度公式,并详细解释了多元正态分布的概率密度公式及其参数意义。同时展示了如何使用numpy生成服从特定均值与协方差矩阵的多元正态分布数组,并通过散点图直观展示生成的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

标准正态分布的概率密度公式

1800705-20200926161632984-176028649.png

正态分布概率密度公式

1800705-20200926161550014-1541470664.png

多元正态分布的概率密度公式

1800705-20200926164159742-1200946164.png

上式为 x 服从 k 元正态分布,x 为 k 维向量;|Σ| 代表协方差矩阵的行列式。

二维正态分布概率密度函数为钟形曲面,等高线是椭圆线族,并且二维正态分布的两个边缘分布都是一维正态分布,如图

1800705-20200926164501817-1312317924.png

numpy生成一个服从多元正态分布的数组

multivariate_normal(mean, cov, size=None, check_valid=None, tol=None)

各参数含义:

mean:均值,维度为1,必选参数;

cov:协方差矩阵,必选参数;

size: 指定生成矩阵的维度,若size=(1, 1, 2),则输出的矩阵的 shape 即形状为 1X1X2XN(N为mean的长度);

check_valid:可取值 warn,raise以及ignore;

tol:检查协方差矩阵奇异值时的公差,float类型。

示例:

import numpy as np

import matplotlib.pyplot as plt

mean = (1, 1)

cov = np.array([[0.1, 0], [0, 1]])

x = np.random.multivariate_normal(mean, cov, (500,), 'raise') # nx2

plt.scatter(x[:, 0], x[:, 1])

plt.xlim(-3, 5)

plt.ylim(-3, 5)

plt.show()

运行结果:

1800705-20200926165130845-1802125961.png

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值