概率密度函数(PDF)和累积分布函数(CDF)以及scipy.stats.norm使用 |
您所在的位置:网站首页 › 密度分布曲线和径向分布函数的区别 › 概率密度函数(PDF)和累积分布函数(CDF)以及scipy.stats.norm使用 |
前言
做算法的过程中,可能会遇到概率密度分布等知识,这里补一下对应的scipy这块的使用 主要是from scipy.stats import norm 对应的也是 正态分布(高斯分布) https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html 正态分布公式为: 图形大概长这样: 这个图就是概率密度 这里说几个名词 随机变量(包括离散随机变量 + 连续随机变量) 概率密度函数(Probability Density Functions - PDF) 累积分布函数(Cumulative Distribution Functions - CDF) 具体可以看这篇文章,用一些小例子来说明的很好理解(抛硬币) https://blog.csdn.net/neweastsun/article/details/124191560 概率密度函数(PDF)和累积分布函数(CDF)以及scipy.stats.norm使用 代码from scipy.stats import norm 里提供了对应的pdf和cdf的功能 from scipy.stats import norm import numpy as np import matplotlib.pyplot as plt fig, ax = plt.subplots(1, 2) x = np.linspace(norm.ppf(0.0001), norm.ppf(0.9999), 100) print(x) rv = norm() ax[0].bar(x, rv.pdf(x), width=0.01, label='pdf') ax[0].set_xticks([-3, -2, -1, 0, 1, 2, 3]) ax[0].set_yticks([0.0, 0.1, 0.2, 0.3, 0.4]) ax[0].set_title("pdf") ax[1].plot(x, rv.cdf(x), '-^', linewidth=1, label='cdf', markersize=2) ax[1].set_xticks([-3, -2, -1, 0, 1, 2, 3]) ax[1].set_yticks(np.linspace(0.0, 1.0, 5)) ax[1].set_title("cdf") plt.show()结果: 左侧是概率密度分布图(0左右为峰值,两侧依次下降,并高度对称),右侧是累积分布图(最大值为1, 范围为0-1) 为了画这幅图我们需要原始的数据(其实就是pdf和cdf图像的x轴数据),可以通过ppf的方式来进行获取,ppf是cdf的反向计算,相当于给予一个累积分位点(0到1, 0接近pdf图的最左侧,1接近pdf的图的最右侧),返回对应的x值。 推荐阅读: 我的2022届互联网校招分享 我的2021总结 浅谈算法岗和开发岗的区别 互联网校招研发薪资汇总 2022届互联网求职现状,金9银10快变成铜9铁10!! 公众号:AI蜗牛车 保持谦逊、保持自律、保持进步 发送【蜗牛】获取一份《手把手AI项目》(AI蜗牛车著) 发送【1222】获取一份不错的leetcode刷题笔记 发送【AI四大名著】获取四本经典AI电子书 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |