python实现beta分布概率密度函数的方法

yipeiwu_com6年前Python基础

如下所示:

beta分布的最大特点是其多样性, 从下图可以看出, beta分布具有各种形态, 有U形, 类似正态分布的形状, 类似uniform分布的形状等, 正式这一特质使beta分布在共轭先验的计算中起到重要作用:

import matplotlib.pyplot as plt
import numpy as np
from scipy import stats
from matplotlib import style
style.use('ggplot')
params = [0.5, 1, 2, 3]
x = np.linspace(0, 1, 100)
f, ax = plt.subplots(len(params), len(params), sharex=True, sharey=True)
for i in range(4):
  for j in range(4):
    alpha = params[i]
    beta = params[j]
    pdf = stats.beta(alpha, beta).pdf(x)
    ax[i, j].plot(x, pdf)
    ax[i, j].plot(0, 0, label='alpha={:3.2f}\nbeta={:3.2f}'.format(alpha, beta), alpha=0)
    plt.setp(ax[i, j], xticks=[0.0, 0.2, 0.4, 0.6, 0.8, 1.0], yticks=[0,2,4,6,8,10])
    ax[i, j].legend(fontsize=10)
ax[3, 0].set_xlabel('theta', fontsize=16)
ax[0, 0].set_ylabel('pdf(theta)', fontsize=16)
plt.suptitle('Beta PDF', fontsize=16)
plt.tight_layout()
plt.show()

以上这篇python实现beta分布概率密度函数的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决python中使用PYQT时中文乱码问题

如题,解决Python中用PyQt时中文乱码问题的解决方法: 在中文字符串前面加上u,如u'你好,世界',其他网上的方法没有多去探究,Python的版本也会影响解决方法,故这里只推荐这种...

对Python多线程读写文件加锁的实例详解

Python的多线程在io方面比单线程还是有优势,但是在多线程开发时,少不了对文件的读写操作。在管理多个线程对同一文件的读写操作时,就少不了文件锁了。 使用fcntl 在linux下,p...

python之PyMongo使用总结

 PyMongo是什么 PyMongo是驱动程序,使python程序能够使用Mongodb数据库,使用python编写而成. 安装 环境:Ubuntu 14.04+pyt...

python3下使用cv2.imwrite存储带有中文路径图片的方法

由于imwrite前使用编码在python3中已经不适用,可用imencode代替,以下代码是从视频中获取第2帧保存在中文文件夹下的实例: cap = cv2.VideoCaptur...

pycharm中显示CSS提示的知识点总结

pycharm中显示CSS提示的知识点总结

我们用pycharm写CSS的时候,是不是苦于没有提示,那么pycharm中如何显示CSS提示呢?下面小编给大家分享一下。 首先点击左上角的file菜单,选择Setting 接着选择E...