Numpy入门(三):Numpy概率模块

本文介绍Numpy中的概率模块和线性代数模块的使用方法,包括生成不同分布类型的随机数,如二项分布、超几何分布、正态分布等,并通过实例展示了如何生成并展示正态分布数据。

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

Numpy中经常使用到的两个模块是概率模块和线性代数模块,randomlinalg 两个模块。

概率模块

  • 产生二项分布的随机数:np.random.binomial(n,p,size=…),其中n,p,size分别是每轮试验次数、概率、轮数

  • 产生超几何分布随机数np.random.hypergeometric(n1,n2,n,size=…),其中参数意义分别是物件1总量、物件2总量、每次采样数、试验次数

  • 产生N个正态分布的随机数:np.random.normal(均值,标准差,N)

  • 产生N个对数正态分布的随机数:np.random.lognormal(mean,sigma,N)

例子

  • 生成随机数

    import numpy as np

    a = np.random.random(size=10)
    print a
    print a.reshape(2,5)

    [0.49377182 0.77456027 0.21313427 0.79165445 0.27105407 0.75815576
    0.44956657 0.7455359 0.95411294 0.75944278]
    [[0.49377182 0.77456027 0.21313427 0.79165445 0.27105407]
    [0.75815576 0.44956657 0.7455359 0.95411294 0.75944278]]

  • 正态分布

使用生成正态分布的数据,并展现出来:

>>> import seaborn as sns
>>> import matplotlib.pyplot as plt
>>> from scipy import stats
>>> np.random.seed(2000)
>>> zt = np.random.normal(loc = 0, scale = 1, size = 2000)
>>> sns.distplot(zt, hist = False, kde = False, fit = stats.norm, fit_kws = {'color':'black','label':'normal distribution','linestyle':'-'})
<matplotlib.axes._subplots.AxesSubplot object at 0x0C509810>
>>>
>>> plt.legend()
<matplotlib.legend.Legend object at 0x06A8BC90>
>>> plt.show()

正态分布
参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

go2coding

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值