本文简要介绍 python 语言中 scipy.stats.cramervonmises
的用法。
用法:
scipy.stats.cramervonmises(rvs, cdf, args=())#
执行单样本 Cramér-von Mises 检验拟合优度。
这将测试累积分布函数 (cdf) 与观察到的随机变量 的经验分布函数 的拟合优度,这些随机变量假定为独立且同分布 ([1]) .零假设是 具有累积分布 。
- rvs: array_like
随机变量 的观察值的一维数组。
- cdf: str 或可调用
用于测试观察结果的累积分布函数
scipy.stats
中的分布名称。如果是可调用对象,则该可调用对象用于计算 cdf:cdf(x, *args) -> float
。 。如果是字符串,它应该是- args: 元组,可选
分布参数。假设这些是已知的;见注释。
- res: 具有属性的对象
- 统计 浮点数
Cramér-von Mises 统计量。
- p值 浮点数
p 值。
参数 ::
返回 ::
注意:
p 值依赖于 [2] 中方程 1.8 给出的近似值。重要的是要记住,只有在测试一个简单的假设(即参考分布的参数已知)时,p 值才是准确的。如果根据数据估计参数(复合假设),则计算出的 p 值不可靠。
参考:
[1]Cramér-von Mises 标准,维基百科,https://en.wikipedia.org/wiki/Cram%C3%A9r%E2%80%93von_Mises_criterion
[2]Csörgő, S. 和 Faraway, J. (1996)。 Cramér-von Mises 统计的精确和渐近分布。皇家统计学会杂志,第 221-234 页。
例子:
假设我们希望测试
scipy.stats.norm.rvs
生成的数据实际上是否来自标准正态分布。我们选择显著性水平alpha=0.05
。>>> import numpy as np >>> from scipy import stats >>> rng = np.random.default_rng() >>> x = stats.norm.rvs(size=500, random_state=rng) >>> res = stats.cramervonmises(x, 'norm') >>> res.statistic, res.pvalue (0.1072085112565724, 0.5508482238203407)
p 值超出了我们选择的显著性水平,因此我们不拒绝观察样本来自标准正态分布的原假设。
现在假设我们希望检查移动 2.1 的相同样本是否与从均值为 2 的正态分布中抽取一致。
>>> y = x + 2.1 >>> res = stats.cramervonmises(y, 'norm', args=(2,)) >>> res.statistic, res.pvalue (0.8364446265294695, 0.00596286797008283)
这里我们使用了参数关键字来指定平均值 (
loc
) 的正态分布来测试数据。这等价于以下,其中我们创建一个均值为 2.1 的冻结正态分布,然后将其传递给cdf
方法作为参数。>>> frozen_dist = stats.norm(loc=2) >>> res = stats.cramervonmises(y, frozen_dist.cdf) >>> res.statistic, res.pvalue (0.8364446265294695, 0.00596286797008283)
无论哪种情况,我们都会拒绝零假设,即观察到的样本是从平均值为 2(默认方差为 1)的正态分布中抽取的,因为 p 值小于我们选择的显著性水平。
相关用法
- Python SciPy stats.cramervonmises_2samp用法及代码示例
- Python SciPy stats.crystalball用法及代码示例
- Python SciPy stats.cosine用法及代码示例
- Python SciPy stats.chisquare用法及代码示例
- Python SciPy stats.cumfreq用法及代码示例
- Python SciPy stats.chi2用法及代码示例
- Python SciPy stats.circmean用法及代码示例
- Python SciPy stats.chi用法及代码示例
- Python SciPy stats.cauchy用法及代码示例
- Python SciPy stats.circvar用法及代码示例
- Python SciPy stats.combine_pvalues用法及代码示例
- Python SciPy stats.circstd用法及代码示例
- Python SciPy stats.chi2_contingency用法及代码示例
- Python SciPy stats.anderson用法及代码示例
- Python SciPy stats.iqr用法及代码示例
- Python SciPy stats.genpareto用法及代码示例
- Python SciPy stats.skewnorm用法及代码示例
- Python SciPy stats.norminvgauss用法及代码示例
- Python SciPy stats.directional_stats用法及代码示例
- Python SciPy stats.invwishart用法及代码示例
- Python SciPy stats.bartlett用法及代码示例
- Python SciPy stats.levy_stable用法及代码示例
- Python SciPy stats.page_trend_test用法及代码示例
- Python SciPy stats.itemfreq用法及代码示例
- Python SciPy stats.exponpow用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.stats.cramervonmises。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。