python如何生成正态分布随机数_python 生成正态分布数据,并绘图和解析

a488dd4e18688a956556193a7f13e997.gif

这篇文章主要介绍了python 生成正态分布数据,并绘图和解析,帮助大家更好的利用python进行数据分析,感兴趣的朋友可以了解下

1、生成正态分布数据并绘制概率分布图

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

# 根据均值、标准差,求指定范围的正态分布概率值

def normfun(x, mu, sigma):

pdf = np.exp(-((x - mu)**2)/(2*sigma**2)) / (sigma * np.sqrt(2*np.pi))

return pdf

# result = np.random.randint(-65, 80, size=100) # 最小值,最大值,数量

result = np.random.normal(15, 44, 100) # 均值为0.5,方差为1

print(result)

x = np.arange(min(result), max(result), 0.1)

# 设定 y 轴,载入刚才的正态分布函数

print(result.mean(), result.std())

y = normfun(x, result.mean(), result.std())

plt.plot(x, y) # 这里画出理论的正态分布概率曲线

# 这里画出实际的参数概率与取值关系

plt.hist(result, bins=10, rwidth=0.8, density=True) # bins个柱状图,宽度是rwidth(0~1),=1没有缝隙

plt.title('distribution')

plt.xlabel('temperature')

plt.ylabel('probability')

# 输出

plt.show() # 最后图片的概率和不为1是因为正态分布是从负无穷到正无穷,这里指截取了数据最小值到最大值的分布

65ace74be3e5135f52135a07a65b3b35.png

根据范围生成正态分布:

result = np.random.randint(-65, 80, size=100) # 最小值,最大值,数量

根据均值、方差生成正态分布:

result = np.random.normal(15, 44, 100) # 均值为0.5,方差为1

2、判断一个序列是否符合正态分布

  • 9
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值