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 相关文章推荐
用pickle存储Python的原生对象方法
Apr 28 Python
Python基于identicon库创建类似Github上用的头像功能
Sep 25 Python
django表单实现下拉框的示例讲解
May 29 Python
对Python闭包与延迟绑定的方法详解
Jan 07 Python
python网络编程 使用UDP、TCP协议收发信息详解
Aug 29 Python
Django框架创建项目的方法入门教程
Nov 04 Python
解决Python logging模块无法正常输出日志的问题
Feb 21 Python
Python3 操作 MySQL 插入一条数据并返回主键 id的实例
Mar 02 Python
python实现微信打飞机游戏
Mar 24 Python
如何写python的配置文件
Jun 07 Python
Django URL参数Template反向解析
Nov 24 Python
python实现发送邮件
Mar 02 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
php 求质素(素数) 的实现代码
2011/04/12 PHP
php使用fgetcsv读取csv文件出现乱码的解决方法
2014/11/08 PHP
php实现微信企业转账功能
2018/10/02 PHP
解析jQuery与其它js(Prototype)库兼容共存
2013/07/04 Javascript
JavaScript 和 Java 的区别浅析
2013/07/31 Javascript
JavaScript Array对象扩展indexOf()方法
2014/05/09 Javascript
EasyUi datagrid 实现表格分页
2015/02/10 Javascript
直接拿来用的15个jQuery代码片段
2015/09/23 Javascript
深入浅析JSON.parse()、JSON.stringify()和eval()的作用详解
2016/04/03 Javascript
NodeJS创建最简单的HTTP服务器
2017/05/15 NodeJs
微信小程序 获取二维码实例详解
2017/06/23 Javascript
详细分析单线程JS执行问题
2017/11/22 Javascript
nodejs搭建本地服务器并访问文件操作示例
2019/05/11 NodeJs
2019最新21个MySQL高频面试题介绍
2020/02/06 Javascript
Jquery+AJAX实现无刷新上传并重命名文件操作示例【PHP后台接收】
2020/05/29 jQuery
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
[08:06]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant 选手采访
2021/03/11 DOTA
python中的格式化输出用法总结
2016/07/28 Python
python实现list元素按关键字相加减的方法示例
2017/06/09 Python
Python 结巴分词实现关键词抽取分析
2017/10/21 Python
使用Python从零开始撸一个区块链
2018/03/14 Python
基于pandas向csv添加新的行和列
2020/05/25 Python
python 实现ping测试延迟的两种方法
2020/12/10 Python
CSS3 translate导致字体模糊的实例代码
2019/08/30 HTML / CSS
医学院校毕业生自荐信范文
2014/01/01 职场文书
岗位职责的构建方法
2014/02/01 职场文书
运动会解说词200字
2014/02/06 职场文书
办公室岗位职责
2014/02/12 职场文书
向领导表决心的话
2014/03/11 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
人力资源管理专业自荐信
2014/06/24 职场文书
月度优秀员工获奖感言
2014/08/16 职场文书
交通事故赔偿协议书怎么写
2014/10/04 职场文书
四风个人对照检查材料思想汇报(办公室通用版)
2014/10/07 职场文书
2014年电话客服工作总结
2014/12/09 职场文书
2014年卫生监督工作总结
2014/12/09 职场文书