python简单实现最大似然估计&scipy库的使用详解
python简单实现最大似然估计
1、scipy库的安装
wim+R输入cmd,然后cd到python的pip路径,即安装:pip install scipy即可
2、导入scipy库
from scipy.sats import norm
导入scipy.sats中的norm
3、案例分析
from scipy.stats import norm import matplotlib.pyplot as plt import numpy as np ''' norm.cdf 返回对应的累计分布函数值 norm.pdf 返回对应的概率密度函数值 norm.rvs 产生指定参数的随机变量 norm.fit 返回给定数据下,各参数的最大似然估计(MLE)值 ''' x_norm = norm.rvs(size=200) #在这组数据下,正态分布参数的最大似然估计值 x_mean, x_std = norm.fit(x_norm) print ('mean, ', x_mean) print ('x_std, ', x_std) plt.hist(x_norm, normed=True, bins=15)#归一化直方图(用出现频率代替次数),将划分区间变为 20(默认 10) x = np.linspace(-3,3,50)#在在(-3,3)之间返回均匀间隔的50个数字。 plt.plot(x, norm.pdf(x), 'r-') plt.show()
运行如下:
补充知识:python hypergeom.cdf函数理解
导入函数
hypergeom.cdf函数是scipy库中的。
from scipy.stats import hypergeom
含义
与scipy帮助文档中的字母定义一致,即用hypergeom.cdf(k,M,n,N)来解释该函数的用法。
hypergeom是用于计算超几何分布的,其中cdf表示的是累计分布函数。这里用超几何分布的一般意义来解释,hypergeom.cdf表示:总共有M件产品,n件次品,从M件中随机挑出N件,这N件中最多包含n件中的k件的概率(也可以理解为M-n件产品中至少选到N-k件的概率)。
以上这篇python简单实现最大似然估计&scipy库的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
赞 (0)