加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Numpy中的三个常用正态分布函数randn,standard_normal, normal

发布时间:2020-12-15 07:20:12 所属栏目:Java 来源:网络整理
导读:摘要: randn,standard_normal,normal这三个函数都可以返回随机正态分布的数组, 它们是从特殊到一般的形式。 normal这个函数更加通用,且名字好记,建议平时使用这个函数生成正态分布。 ? 这三个函数都可以返回随机正态分布(高斯Gaussian 分布)的数组,

摘要:randn,standard_normal,normal这三个函数都可以返回随机正态分布的数组, 它们是从特殊到一般的形式。normal这个函数更加通用,且名字好记,建议平时使用这个函数生成正态分布。

?

这三个函数都可以返回随机正态分布(高斯Gaussian 分布)的数组,都可以从numpy.random中导出,先看三个函数的参数方式:

randn:?randn(d0,?d1,?...,?dn),

返回shape为(d0,?dn)的标准正态分布(均值为0,标准差为1)的数组

?

standard_normal:?standard_normal(size=None),

跟randn一样,也是返回标准正态分布的数组,不同的是它的shape由size参数指定,对于多维数组,size必须是元组形式;

?

normal:??normal(loc=0.0,?scale=1.0,?size=None),

更一般的形式,返回均值为loc,标准差为scale的正态分布,shape由size参数决定。

?

可以看出randn,standard_normal,normal三个函数是从特殊到一般, randn是standard_normal的便捷写法,省去了需要将数组shape封装到size参数中,但这个函数的命名和参数方式是从MATLAB中引过来的,跟Numpy的其他函数如zeros,ones参数方式也不同统一,不建议使用。

?

randn和standard_normal都只能返回标准正态分布,对于更一般的正态分布Ν(μ,?σ2),需要使用?σ?* np.random.randn(...) +?μ

?

normal函数可以直接给出均值和标准差(loc表示均值,scale表示标准差),normal函数默认情况下也是返回标准正态分布(loc=0.0,?scale=1.0),

考虑到normal这个函数更加通用,且名字好记,建议平时使用这个函数生成正态分布。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读