statsmodels.stats.diagnostic.kstest_fit

statsmodels.stats.diagnostic.kstest_fit(x, dist='norm', pvalmethod='table')[source]

使用Lilliefors检验假设正态或指数分布。

Lilliefors检验是一种带有估计参数的Kolmogorov-Smirnov检验。

Parameters:
xarray_like, 1d

要测试的数据。

dist{‘norm’, ‘exp’}, optional

假设的分布。

pvalmethod{‘approx’, ‘table’}, optional

用于计算检验统计量p值的方法。通常,‘table’是首选方法,并且使用了一个非常大的模拟。‘approx’仅在正态性下有效。如果dist = ‘exp’,则始终使用table。‘approx’使用Dalal和Wilkinson的近似公式,适用于p值 < 0.1。如果p值大于0.1,则返回table的结果。

Returns:
ksstatfloat

Kolmogorov-Smirnov 检验统计量,使用估计的均值和方差。

pvaluefloat

如果p值低于某个阈值,例如0.05,那么我们可以拒绝原假设,即样本来自正态分布。

注释

‘table’ 使用了一个基于10,000,000次模拟改进的表格。临界值是使用以下公式近似的: log(cv_alpha) = b_alpha + c[0] log(n) + c[1] log(n)**2 其中 cv_alpha 是大小为 alpha 的检验的临界值,b_alpha 是一个特定于 alpha 的截距项,c[1] 和 c[2] 是所有 alpha 共享的系数。 表格中的值是线性插值的。超出范围的值将作为边界返回,0.990 表示较大的 p 值,0.001 表示较小的 p 值。

有关实现细节,请参阅测试目录中的 lilliefors_critical_value_simulation.py。


Last update: Oct 16, 2024