python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python最大似然估计scipy库

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

作者:smileLLZ

这篇文章主要介绍了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库的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文