kstest(x, cdf="norm")
时间: 2023-07-03 17:12:27 浏览: 59
`kstest()` 函数是用来进行 Kolmogorov-Smirnov 检验的函数,可以用于检验样本数据是否来自于指定分布。该函数会返回两个值,一个是检验统计量的值,另一个是对应的 p-value(显著性水平),可以使用 p-value 判断样本数据是否来自于指定分布。
以下是一个示例代码,展示如何使用 `kstest()` 函数进行 Kolmogorov-Smirnov 检验:
```python
import numpy as np
from scipy.stats import kstest, norm
# 生成一组随机数据
np.random.seed(123456789)
x = np.random.normal(size=100)
# 进行 Kolmogorov-Smirnov 检验
test_stat, p_value = kstest(x, cdf="norm")
# 输出检验统计量的值和 p-value
print('test statistic =', test_stat)
print('p-value =', p_value)
# 判断样本数据是否来自于正态分布
if p_value > 0.05:
print('样本数据来自于正态分布')
else:
print('样本数据不来自于正态分布')
```
上述代码中,我们使用 `numpy.random` 模块生成了一组随机数据 `x`,然后使用 `scipy.stats.kstest()` 方法对 `x` 进行了 Kolmogorov-Smirnov 检验,并将结果存储在 `test_stat` 和 `p_value` 两个变量中。我们输出了检验统计量的值和 p-value,并根据 p-value 的大小来判断样本数据是否来自于正态分布。如果 p-value 大于显著性水平 0.05,则可以认为样本数据来自于正态分布,否则认为不来自于正态分布。