我想使用scipy.stats.probplot对mydata
进行一些高斯度测试。
from scipy import stats
_,fit=stats.probplot(mydata, dist=stats.norm,plot=ax)
goodness_fit="%.2f" %fit[2]
文档说:
根据a的分位数生成样本数据的概率图 指定的理论分布(正态分布) 默认)。 probplot可选地计算数据的最佳拟合线 并使用Matplotlib或给定的绘图函数绘制结果。 probplot生成一个概率图,不应混淆 使用Q-Q或P-P图。 Statsmodels具有更广泛的功能 这种类型,请参阅statsmodels.api.ProbPlot。
但是,如果google上概率图,它是P-P情节的通用名称,而文档说不要混淆这两件事。
现在我很困惑,这个功能在做什么?
答案 0 :(得分:4)
几个小时以来我一直在寻找这个问题的答案,可以在Scipy / Statsmodel代码注释中找到。
在 Scipy 中,https://github.com/scipy/scipy/blob/abdab61d65dda1591f9d742230f0d1459fd7c0fa/scipy/stats/morestats.py#L523处的评论说:
probplot
生成概率图,不应将其与 Q-Q或P-P图。 Statsmodels具有更广泛的功能 类型,请参见statsmodels.api.ProbPlot
。
现在,让我们看一下 Statsmodels ,其中https://github.com/statsmodels/statsmodels/blob/66fc298c51dc323ce8ab8564b07b1b3797108dad/statsmodels/graphics/gofplots.py#L58上的评论说:
ppplot:概率-概率图 比较样本和理论概率(百分位数)。
qqplot:分位数-分位数图 比较样本和理论分位数
probplot:概率图 与Q-Q图相同,但是概率显示为 理论分布(x轴)和y轴包含 样本数据的非标度分位数。
因此,在这些模块中,QQ图和概率图之间的差异与比例有关。
答案 1 :(得分:1)
事件发生的理论概率是基于对情况的了解的“预期”概率。这是有利结果的数量对可能结果的数量。
在实验过程中从观测中收集数据时,将计算经验(或实验)概率。
示例:您扔了一个硬币,就得到了一个头。
实验概率(头)= 1
理论概率(头)= 0.5
为简单起见,请参见下图,该图显示了获得特定账单金额的可能性。显示了p和q图。
ppplot:概率-概率图比较样本和理论概率(百分位数)。
qqplot:分位数-分位数图比较样本分位数和理论分位数
probplot:概率图与Q-Q图相同,但是概率以理论分布的比例(x轴)显示,y轴包含未缩放的样本数据分位数。
ppplot,qqplot和probplot之间的差异与比例有关。都在x和y轴上显示示例值和理论值。
百分比图 百分比图是最简单的图。您只需根据数据的绘制位置绘制数据即可。绘图位置以线性比例显示,但数据可以适当缩放。
分位数图 分位数图类似于概率图。主要区别在于绘图位置根据概率分布转换为分位数或ZZ分数。
默认分布是标准正态分布。您会注意到,Q-Q图上的数据形状比P-P图更直。这是由于将绘图位置转换为分布的分位数时发生的转换。
最合适的生产线
在概率图上添加一条最合适的线可以提供关于数据集是否可以由分布来表征的见识
在统计和概率分位数中,是将概率分布范围划分为等概率连续区间的切点,或者以相同方式将样本中的观察值划分为切点。 正态分布的概率密度,显示了四分位数。红色曲线下方的区域在(-∞,Q1),(Q1,Q2),(Q2,Q3)和(Q3,+∞)区间相同。
在统计中,Q-Q(分位数-分位数)图是概率图,这是一种图形方法,用于通过将两个概率分布彼此相对绘制来比较两个概率分布。
如果要比较的两个分布相似,则Q-Q图中的点将大致位于y = x线上。如果分布是线性相关的,则Q-Q图中的点将大致位于一条线上,但不一定位于y = x线上。
使用Q-Q图比较分布的形状,以图形方式显示两个分布中的位置,比例和偏度等属性如何相似或不同。
P–P图相互绘制了两个累积分布函数(cdfs):这是一个概率图,用于评估两个数据集的一致性,绘制了两个累积分布函数彼此之间的关系。 P-P图被广泛用于评估分布的偏度。