使用Python绘制三种概率曲线详解
更新时间:2022年03月23日 09:38:54 作者:hhh江月
这篇文章主要为大家分享了如何利用Python实现概率曲线的绘制,文中绘制了正态分布的曲线和指数分布的曲线,感兴趣的可以了解一下
曲线一
解释
这里是使用matplotlib来绘制正态分布的曲线。
代码实现
import numpy as np import matplotlib.pyplot as plt def test1(n, m=500): out = [] result = np.random.normal(1, 5, n * m) print(result) for i in range(m): average0 = 0 for j in range(n): average0 += result[n * i + j] if j == n - 1: out.append(average0 / n) average0 = 0 print(out) plt.hist(out,bins=25) plt.title("test (1)") plt.xlabel("x") plt.ylabel("rate") plt.show() test1(5)
曲线二
解释
这里使用了matplotlib.pyplot来实现指数分布的绘制,具体的代码实现参见下面所示:
代码实现
import numpy as np import matplotlib.pyplot as plt def test2(n, m=500): out0 = [] result0 = np.random.exponential(scale=1, size=n * m) # print(result0) for i in range(m): average000 = 0 for j in range(n): average000 += result0[n * i + j] if j == n - 1: out0.append(average000 / n) average000 = 0 # print(out0) plt.hist(out0,bins=25) plt.show() test2(5)
曲线三
代码实现
import numpy as np import matplotlib.pyplot as plt def test3(n1, m111=500): out11 = [] # np.random.standard_t result11 = np.random.standard_t(1, size=n1 * m111) # print(result) for i in range(m111): average0 = 0 for j in range(n): average0 += result11[n1 * i + j] if j == n - 1: out11.append(average0 / n1) average0 = 0 # print(out11) plt.hist(out11,bins=20) plt.title("test (3)") plt.show() test3(30)
到此这篇关于使用Python绘制三种概率曲线详解的文章就介绍到这了,更多相关Python概率曲线内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
python读取图片的方式,以及将图片以三维数组的形式输出方法
今天小编就为大家分享一篇python读取图片的方式,以及将图片以三维数组的形式输出方法,具有好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-07-07Python操作MySQL MongoDB Oracle三大数据库深入对比
对于数据分析师来说,学习数据库最重要的就是学习它们的查询功能。这篇文章就以这个为切入点,为大家讲述如何用Python操作这3个数据库2021-10-10
最新评论