python统计函数库scipy.stats的用法解析


Posted in Python onFebruary 25, 2020

背景

总结统计工作中几个常用用法在python统计函数库scipy.stats的使用范例。

正态分布

以正态分布的常见需求为例了解scipy.stats的基本使用方法。

1.生成服从指定分布的随机数

norm.rvs通过loc和scale参数可以指定随机变量的偏移和缩放参数,这里对应的是正态分布的期望和标准差。size得到随机数数组的形状参数。(也可以使用np.random.normal(loc=0.0, scale=1.0, size=None))

In [4]: import numpy as np
In [5]: import scipy.stats as st
In [6]: st.norm.rvs(loc = 0,scale = 0.1,size =10)
Out[6]:
array([ 0.12259875, 0.07001414, 0.11296181, -0.00630321, -0.04377487,
0.00474487, -0.00728678, 0.03860256, 0.06701367, 0.03797084])
In [7]:
In [9]: st.norm.rvs(loc = 3,scale = 10,size=(2,2))
Out[9]:
array([[-13.26078265, 0.88411923],
[ 5.14734849, 17.94093177]])
In [10]:

2.求概率密度函数指定点的函数值

stats.norm.pdf正态分布概率密度函数。

In [33]: st.norm.pdf(0,loc = 0,scale = 1)
Out[33]: 0.3989422804014327
In [34]: st.norm.pdf(np.arange(3),loc = 0,scale = 1)
Out[34]: array([ 0.39894228, 0.24197072, 0.05399097])
In [35]:

3.求累计分布函数指定点的函数值

stats.norm.cdf正态分布累计概率密度函数。

In [52]: st.norm.cdf(0,loc=3,scale=1)
Out[52]: 0.0013498980316300933
In [53]: st.norm.cdf(0,0,1)
Out[53]: 0.5
In [54]:

4.累计分布函数的逆函数

stats.norm.ppf正态分布的累计分布函数的逆函数,即下分位点。

In [59]: z05 = st.norm.ppf(0.05)
In [60]:
In [60]: z05
Out[60]: -1.6448536269514729
In [61]: st.norm.cdf(z05)
Out[61]: 0.049999999999999975
In [62]:

通用函数

stats连续型随机变量的公共方法:

名称 备注
rvs 产生服从指定分布的随机数
pdf 概率密度函数
cdf 累计分布函数
sf 残存函数(1-CDF)
ppf 分位点函数(CDF的逆)
isf 逆残存函数(sf的逆)
fit 对一组随机取样进行拟合,最大似然估计方法找出最适合取样数据的概率密度函数系数。

*离散分布的简单方法大多数与连续分布很类似,但是pdf被更换为密度函数pmf。

常见分布

可能用到的分布对照表

名称 含义
beta beta分布
f F分布
gamma gam分布
poisson 泊松分布
hypergeom 超几何分布
lognorm 对数正态分布
binom 二项分布
uniform 均匀分布
chi2 卡方分布
cauchy 柯西分布
laplace 拉普拉斯分布
rayleigh 瑞利分布
t 学生T分布
norm 正态分布
expon 指数分布

以上这篇python统计函数库scipy.stats的用法解析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中调用ggplot的三种方法
Apr 08 Python
Python实现的数据结构与算法之基本搜索详解
Apr 22 Python
python连接字符串的方法小结
Jul 13 Python
详解python单例模式与metaclass
Jan 15 Python
python3 图片referer防盗链的实现方法
Mar 12 Python
python如何读写csv数据
Mar 21 Python
在cmder下安装ipython以及环境的搭建
Oct 19 Python
提升Python程序性能的7个习惯
Apr 14 Python
关于Python作用域自学总结
Jun 10 Python
Python识别html主要文本框过程解析
Feb 18 Python
python 判断一组数据是否符合正态分布
Sep 23 Python
两行代码解决Jupyter Notebook中文不能显示的问题
Apr 24 Python
Python Websocket服务端通信的使用示例
Feb 25 #Python
Python GUI库PyQt5样式QSS子控件介绍
Feb 25 #Python
浅谈python累加求和+奇偶数求和_break_continue
Feb 25 #Python
Python GUI库PyQt5图形和特效样式QSS介绍
Feb 25 #Python
python 伯努利分布详解
Feb 25 #Python
Python3如何在Windows和Linux上打包
Feb 25 #Python
python实现可下载音乐的音乐播放器
Feb 25 #Python
You might like
239军机修复记
2021/03/02 无线电
php 批量生成html,txt文件的实现代码
2013/06/26 PHP
PHP面向对象程序设计之对象生成方法详解
2016/12/02 PHP
PHP redis实现超迷你全文检索
2017/03/04 PHP
JavaScript 实现??打印?理
2007/04/28 Javascript
js 字符串操作函数
2009/07/25 Javascript
javascript禁制后退键(Backspace)实例代码
2013/11/15 Javascript
javascript不同类型数据之间的运算的转换方法
2014/02/13 Javascript
js实现点击按钮后给Div图层设置随机背景颜色的方法
2015/05/06 Javascript
微信小程序去哪里找 小程序到底如何使用(附小程序名单)
2017/01/09 Javascript
详解vue之页面缓存问题(基于2.0)
2017/01/10 Javascript
解决微信内置浏览器返回上一页强制刷新问题方法
2017/02/05 Javascript
通过一个简单的例子学会vuex与模块化
2017/11/22 Javascript
JS基于设计模式中的单例模式(Singleton)实现封装对数据增删改查功能
2018/02/06 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
2018/03/02 Javascript
vue项目中vue-i18n和element-ui国际化开发实现过程
2018/04/25 Javascript
vue中动态设置meta标签和title标签的方法
2018/07/11 Javascript
vue中使用vee-validator完成表单校验方案
2019/11/01 Javascript
socket + select 完成伪并发操作的实例
2017/08/15 Python
Python 3.x 安装opencv+opencv_contrib的操作方法
2018/04/02 Python
python traceback捕获并打印异常的方法
2018/08/31 Python
Python中使用logging和traceback模块记录日志和跟踪异常
2019/04/09 Python
python多线程并发及测试框架案例
2019/10/15 Python
wxPython绘图模块wxPyPlot实现数据可视化
2019/11/19 Python
python3 pathlib库Path类方法总结
2019/12/26 Python
Python Pandas 对列/行进行选择,增加,删除操作
2020/05/17 Python
Python装饰器结合递归原理解析
2020/07/02 Python
目前不被任何主流浏览器支持的CSS3属性汇总
2014/07/21 HTML / CSS
怀旧香味蜡烛:Homesick
2019/11/02 全球购物
XML文档面试题
2015/08/05 面试题
建筑设计所实习生自我鉴定
2013/09/25 职场文书
历史系自荐信范文
2013/12/24 职场文书
汽车服务工程专业自荐信
2014/09/02 职场文书
毕业酒会致辞
2015/07/29 职场文书
Python基础之元组与文件知识总结
2021/05/19 Python
MySQL8.0升级的踩坑历险记
2021/11/01 MySQL