您的位置:首页 > 编程语言 > Python开发

python简单实现最大似然估计&scipy库的使用详解

2020-04-16 12:06 531 查看

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库的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息