1. 程式人生 > >python中求分佈函式相關的包

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的期望值。
參考:

http://www.cdadata.com/7749