numpy里的randn
这个函数的作用就是从标准正态分布中返回一个或多个样本值。什么是标准正态分布
来源:http://www.360doc.com/content/17/0306/13/32342759_634411464.shtml
什么是正态分布
正态概率分布是连续型随机变量概率分布中最重要的形式,它在实践中有着广泛的应用。在生活中有许多现象的分布都服从正态分布,如人的身高、体重、智商分数;某种产品的尺寸和质量;降雨量;学习成绩,特别是,在统计推断时,当样本的数量足够大时,许多统计数据都服从正态分布。下面以人的身高为例,通俗解释一下什么是正态分布?
随机抽取200位同等年龄上下的男性,测量好他们的身高之后计算出平均身高,通过将平均身高和他们各自的身高对比,我们可以轻松发现这一现象:大多数男性的身高都集中在平均身高上下浮动,有极少数男性身高很矮,也有极少数男性身高很高。这200为男性身高的概率密度函数可能如下图所示:
实际上,这种形状十分常见,应用很广泛,它叫做正态分布。
正态分布的概率密度函数
正态分布之所以被称为正态,是因为它的形态看起来合乎理性。在现实生活中,遇到测量值之类的大量连续数据时,正常情况下都会期望看到这种形态。正态分布的概率密度函数的计算公式如下:
其中μ=均值,σ=标准差,π=3.14159,e=2.71828。如果随机变量X符合上述概率密度函数的分布,则称X是服从参数为μ,σ2的正态分布,记为X~N(μ,σ2)。
正态分布的概率密度函数具有下列性质;
以x=μ为对称轴的对称分布;
σ2指分散性,σ2值越大,正态分布的曲线越扁平、越宽;
以x轴为渐近线;
若随机变量X1,X2…,Xn皆服从正态分布,且相互独立,则对任意几个常数a1,a2,…,an(不全为0),Z=a1X1+a2x2+……+anXn也服从正态分布。
正态分布求概率
在《每天一点统计学——概率密度函数》中,我们已经知道如何使用概率密度函数求概率的方法。但是在正态分布中求概率是非常困难的,提供包括所有不同的μ和σ的正态分布表也是不可能的。所以统计学家通过一种简单的方法来解决这一问题。对于一个随机变量X~N(μ,σ2),如果令Z=(x-μ)/σ(标准分),则随机变量Z服从μ=0,σ2=1的正态分布,记为Z~N(0,1),称为标准正态分布。
标准正态分布的概率密度函数为:
通过上式可以看出标准正态分布不再依赖于参数μ和σ,它是固定的,是唯一的。因此,标准正态分布中随机变量与其概率的对应关系被计算出来,并列为标准正态概率分布表,以便查询。于是,对于不同的μ和σ,只要将变量值转化为Z值,然后查表即可得到其概率值。
标准正态概率分布表
例子:已知研究生完成一篇硕士论文的时间服从正态分布,平均花费2500h,标准差为400h,现随机找到一个已完成论文的学生,求:
(1)他完成论文的时间超过2700h的概率;
(2)他完成论文的时间低于2000h的概率;
(3)他完成论文的时间在2400h~2600h之间的概率。
解:用X表示完成论文的时间,则X~N(2500,400*400)。这是非标准的正态分布,如果直接计算概率是非常麻烦的,我们首先将其转化为标准正态分布,然后通过标准正态分布表查出变量的概率值。
(1)求P(X>2700)
Z=(x-μ)/σ=(2700-2500)/400=0.5
可以查询标准正态分布概率表,表中第一列是z值,第一行是z值的补充值,现z=0.5求的是从0.5到+∞的区间上的概率,即1-0.6915 = 0.3085。
(2)求P(X<>
Z=(x-μ)/σ=(2000-2500)/400=-1.25
根据正态分布的对称性,1.25的概率值与-1.25的概率值完全对称,所以只查1.25的概率值即可。Z=1.25时,P(1.25)=0.8944,则P(-1.25)= 1-P(1.25)=0.1056
(3)求P(2400<><>
Z1=(x-μ)/σ=(2600-2500)/400=0.25
Z2=(x-μ)/σ=(2400-2500)/400=-0.25
查询标准正态分布概率表,可得出P(0.25) = 0.5987,P(-0.25) = 0.4013。
P(2400<><><2600) -=""><2400) =="" 0.5987="" -="" 0.4013="">
什么是标准差?
标准差开方就是方差
什么是标准差以及计算公式?
先求出平均数u X为每个数,N为总共有几个数
numpy里的randn的更多相关文章
- python numPy模块 与numpy里的数据类型、数据类型对象dtype
学习链接:http://www.runoob.com/numpy/numpy-tutorial.html 官方链接:https://numpy.org/devdocs/user/quickstart. ...
- numpy.random.rand()/randn()/randint()/normal()/choice()/RandomState()
这玩意用了很多次,但每次用还是容易混淆,今天来总结mark一下~~~ 1. numpy.random.rand(d0,d1,...,dn) 生成一个[0,1)之间的随机数或N维数组 np.random ...
- numpy里*与dot与multiply
一.* , dot() multiply() 1, 对于array来说,(* 和 dot()运算不同, * 和 multiply()运算相同) *和multiply() 是每个元素对应相乘 do ...
- Numpy 里线性代数函数
c
- Python的rand vs randn以及linspace
Numpy里面的randn是满足了整体分布的,normal distribution(正态分布):rand则是满足了Uniform Distribution(均匀分布): Linspace(start ...
- NumPy的详细教程
原文 http://blog.csdn.net/lsjseu/article/details/20359201 主题 NumPy 先决条件 在阅读这个教程之前,你多少需要知道点python.如果你想 ...
- Numpy 学习(一)
1.Numpy 中Matrices和arrays的区分 Numpy matrices必须是2维的,但是 numpy arrays (ndarrays) 可以是多维的(1D,2D,3D····ND). ...
- Numpy基础总结
一.文件读取 numpy.genfromtxt() 可以用来读取各种文件.常用语法大致如下: numpy.genfromtxt(fname, dtype=<type 'float'>, d ...
- 【转】numpy教程
[转载说明] 本来没有必要转载的,只是网上的版本排版不是太好,看的不舒服.所以转过来,重新排版,便于自己查看. 基础篇 NumPy的主要对象是同种元素的多维数组. 这是一个所有的元素都是一种类型.通过 ...
随机推荐
- C# 自动发送邮件被系统当做垃圾邮件退回的处理方法
前两天做了一个发送邮件的定时任务.其功能为在每天的某一时刻,系统自动从银行查询前一天的交易明细到本地服务器,解析后生成为各自不同Excel文件,并打包成zip压缩文件,然后抄送附件给财务对账.其中,邮 ...
- XML——Schema
body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...
- MySQL5.7 主从复制配置
一.主从复制原理 MySQL 主从复制是一个异步的复制过程,主库发送更新事件到从库,从库读取更新记录,并执行更新记录,使得从库的内容与主库保持一致.每一个主从复制的连接,都有三个线程.拥有多个从库的主 ...
- STL标准库-算法-常用算法
技术在于交流.沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 介绍11种STL标准库的算法,从这11种算法中总结一下算法的基本使用 1.accumulate() 累加 2.for_each( ...
- mysql sum(if())用法
原表:id fenlei time1 分类1 201303162 分类2 201303163 分类3 201303174 ...
- php 易忽略问题
- grafana查询中的变量templating
有时我们在管理成百上千台机器的时候,配置grafana无疑是明智的,因为你不需要一个一个的把每个机器的图形都配置一遍,利用templating就可以瞬间实现n台机器的状态显示了. templating ...
- [Scala]Scala学习笔记七 正则表达式
1. Regex对象 我们可以使用scala.util.matching.Regex类使用正则表达式.要构造一个Regex对象,使用String类的r方法即可: val numPattern = &q ...
- 常用增强学习实验环境 II (ViZDoom, Roboschool, TensorFlow Agents, ELF, Coach等) (转载)
原文链接:http://blog.csdn.net/jinzhuojun/article/details/78508203 前段时间Nature上发表的升级版Alpha Go - AlphaGo Ze ...
- Linux环境下 多线程下载 (Python 实现版)
本文是多年前学习编程时参照一个网友程序的基础之上改写的, 采用Python语音编写, 多线程下载功能, 可以有效提高Linux下原有下载工具中的一些不足,以下给出具体代码. #!/usr/bin/py ...