在python中求分布函数相关的包实例

为了了解(正态)分布的方法和属性,我们首先引入norm

 >>>from scipy.stats import norm
 >>>rv = norm()
 >>>dir(rv) # reformatted
[‘__class__', ‘__delattr__', ‘__dict__', ‘__doc__', ‘__getattribute__',
‘__hash__', ‘__init__', ‘__module__', ‘__new__', ‘__reduce__', ‘__reduce_ex__',
‘__repr__', ‘__setattr__', ‘__str__', ‘__weakref__', ‘args', ‘cdf', ‘dist',
‘entropy', ‘isf', ‘kwds', ‘moment', ‘pdf', ‘pmf', ‘ppf', ‘rvs', ‘sf', ‘stats']

其中,连续随机变量的主要公共方法如下:

rvs: Random Variates
pdf: Probability Density Function
cdf: Cumulative Distribution Function
sf: Survival Function (1-CDF)
ppf: Percent Point Function (Inverse of CDF)
isf: Inverse Survival Function (Inverse of SF)
stats: Return mean, variance, (Fisher's) skew, or (Fisher's) kurtosis
moment: non-central moments of the distribution

rvs:随机变量

pdf:概率密度函。

cdf:累计分布函数

sf:残存函数(1-CDF)

ppf:分位点函数(CDF的逆)

isf:逆残存函数(sf的逆)

stats:返回均值,方差,(费舍尔)偏态,(费舍尔)峰度。

moment:分布的非中心矩。

我们以cdf为例:

 >>>norm.cdf(0)
0.5
>>>norm.mean(), norm.std(), norm.var()
(0.0, 1.0, 1.0)

重点来了,cdf的逆竟然也可以求,这个方法就是ppf

>>>norm.ppf(0.5)
0.0

离散分布中,pdf被更换为密度函数pmf,而cdf的逆也有所不同:

ppf(q) = min{x : cdf(x) >= q, x integer}

此外,fit可以求分布参数的极大似然估计,包括location与scale,nnlf可以求负对数似然函数,expect可以计算函数pdf或pmf的期望值。

以上这篇在python中求分布函数相关的包实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python模块汇总(常用第三方库)

    模块 定义 计算机在开发过程中,代码越写越多,也就越难以维护,所以为了编写可维护的代码,我们会把函数进行分组,放在不同的文件里.在python里,一个.py文件就是一个模块 优点: 提高代码的可维护性. 提高代码的复用,当模块完成时就可以在其他代码中调用 引用其他模块,包含python内置模块和其他第三方模块 避免函数名和变量名等名称冲突 Python语言生态 Python语言提供超过15万个第三方库,Python库之间广泛联系.逐层封装. 使用pip安装 Python社区:https://py

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

    背景 总结统计工作中几个常用用法在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 a

  • python 计算两个列表的相关系数的实现

    用pandas计算相关系数 计算相关系数用pandas,比如我想知道风速大小与风向紊乱(标准差来衡量)之间的相关系数,下面是代码: import pandas as pd import pylab as plt #每小时的阵风风速平均值 all_gust_spd_mean_list = [8.21529411764706, 7.872941176470587, 7.829411764705882, 8.354117647058825, 9.025882352941174, 9.384523809

  • python strip()函数 介绍

    函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除序列的字符 s.lstrip(rm)       删除s字符串中开头处,位于 rm删除序列的字符 s.rstrip(rm)      删除s字符串中结尾处,位于 rm删除序列的字符 注意: 1. 当rm为空时,默认删除空白符(包括'\n', '\r',  '\t',  ' ') 例如: 复制代码 代码如下: >>> a = '     123'>>

  • 在python中求分布函数相关的包实例

    为了了解(正态)分布的方法和属性,我们首先引入norm >>>from scipy.stats import norm >>>rv = norm() >>>dir(rv) # reformatted ['__class__', '__delattr__', '__dict__', '__doc__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__redu

  • 对python中的装包与解包实例详解

    *args和 **kwargs是常用的两个参数 *args:用于接受多余的未命名的参数,元组类型. **kwargs:用于接受形参的命名参数,字典类型的数据. 可变参数args: def fun(n, *args): print(n) print(args) # 未拆包 print(*args) # 进行拆包 fun(1,2,3,4) 结果: 1 (2, 3, 4) 2 3 4 形参中的*args是接受数据的args,它是一个元组,把传入的数据放进args元组中. 函数中的args仍然是元组,

  • 在python Numpy中求向量和矩阵的范数实例

    np.linalg.norm(求范数):linalg=linear(线性)+algebra(代数),norm则表示范数. 函数参数 x_norm=np.linalg.norm(x, ord=None, axis=None, keepdims=False) ①x: 表示矩阵(也可以是一维) ②ord:范数类型 向量的范数: 矩阵的范数: ord=1:列和的最大值 ord=2:|λE-ATA|=0,求特征值,然后求最大特征值得算术平方根 ord=∞:行和的最大值 ③axis:处理类型 axis=1表

  • Python中求对数方法总结

    Python中Math库和Python库都具备求对数的函数. import numpy as np import math 1. Numpy库 1.1 求以e.2.10为底的对数 函数 功能 np.log(x) 以e为底的对数(自然对数) np.log10(x) 以10为底的对数 np.log2(x) 以2为底的对数 np.log1p(x) 等价于:np.log(x + 1) 备注:np.expm1(x) 等价于 np.exp(x) - 1,也是np.log1p(x)的逆运算. 1.2 求以任意

  • Python序列类型的打包和解包实例

    打包 如给出一系列由逗号分隔的表达式,他们将被视为一个单独元组,即使没有提供封闭的圆括号 如: numbers = 1, 2, 3, 4 使numbers被赋值元组(1, 2, 3, 4) return a, b 返回元组(a, b) 解包 Python可以自动解包一个序列,润许单个标识符的一系列元素赋值给序列中的各个元素,如: a, b, c, d = range(1,5) a = 1, b = 2, c = 3, d = 4 quotient, remainder = divmod(a, b

  • 在Python中利用pickle保存变量的实例

    在工作中出于某些原因,我们可能需要将变量保存下来,这样下次就可以直接去赋值而不用重新执行某些重复耗时的操作了,这里我们用到了Python的pickle包来做变量的存储和变量加载,大家注意这个包是python自带的,不需要另外再去安装. pickle用法如下: pickle.dump(obj, file, protocol=None,*,fix_imports=True) pickle.load(file, *,fix_imports=True, encoding="ASCII". er

  • Python中Selenium模拟JQuery滑动解锁实例

    本文介绍了Python中Selenium模拟JQuery滑动解锁实例,分享给大家,也给自己留个笔记 滑动解锁一直做UI自动化的难点之一,我补一篇滑动解锁的例子,希望能给初做Web UI自动化测试的同学一些思路. 首先先看个例子. 当我手动点击滑块时,改变的只是样式: 1.slide-to-unlock-handle 表示滑块,滑块的左边距在变大(因为它在向右移动嘛!) 2.Slide-tounlock-progress 表示滑过之后的背景黄色,黄色的宽度在增加,因为滑动经过的地方都变黄了. 除些

  • python中 chr unichr ord函数的实例详解

    python中 chr unichr ord函数的实例详解 chr()函数用一个范围在range(256)内的(就是0-255)整数作参数,返回一个对应的字符.unichr()跟它一样,只不过返回的是Unicode字符,这个从Python 2.0才加入的unichr()的参数范围依赖于你的python是如何被编译的.如果是配置为USC2的Unicode,那么它的允许范围就是range(65536)或0x0000-0xFFFF:如果配置为UCS4,那么这个值应该是range(1114112)或0x

  • python中判断文件编码的chardet(实例讲解)

    1.实测,这个版本在32位window7和python3.2环境下正常使用. 2.使用方法:把解压后所得的chardet和docs两个文件夹拷贝到python3.2目录下的Lib\site-packages目录下就可以正常使用了. 3.判断文件编码的参考代码如下: file = open(fileName, "rb")#要有"rb",如果没有这个的话,默认使用gbk读文件. buf = file.read() result = chardet.detect(buf)

  • python中字符串变二维数组的实例讲解

    有一道算法题题目的意思是在二维数组里找到一个峰值.要求复杂度为n. 解题思路是找田字(四边和中间横竖两行)中最大值,用分治法递归下一个象限的田字. 在用python定义一个二维数组时可以有list和numpy.array两种方式,看了几篇python中二维数组的建立的博客发现大多都是建立的初始化的二维数组,而我需要通过文件读取得到的是字符串,再把字符串转换为二维数组,找不到解决方法还是决定自己来转换. 首先,最开始的字符串输出如下,数字之间有空格 思路就是把先按换行符进行切片,再对每一行的字符再

随机推荐