python ks检验_在python scipy中实现Kolmogorov Smirnov检验

本文介绍了如何在Python中使用scipy库进行Kolmogorov-Smirnov检验,用于测试数据是否符合标准正态分布。通过示例展示了当数据的均值和标准差不为0和1时,对数据进行归一化处理的重要性,并警告了错误地使用样本均值和标准差可能导致p值无效的问题。
摘要由CSDN通过智能技术生成

您的数据是以mu = 0.07和sigma = 0.89生成的。

您正在使用平均值0和标准偏差1的正态分布来测试此数据。

零假设(H0)是您的数据是样本的分布等于标准正态分布,平均值为0,标准偏差为1。

小的p值表示将具有与D一样大的测试统计量,其概率为p值。

换句话说,(p值〜8.9e-22),H0是非常不可能的。

这是合理的,因为手段和标准偏差不匹配。

比较你的结果:

In [23]: import scipy.stats as stats

In [24]: stats.kstest(np.random.normal(0,1,10000),'norm')

Out[24]: (0.007038739782416259, 0.70477679457831155)

为了测试你的数据是高斯,你可以移动和重新调整它,所以它是正常的平均值0和标准偏差1:

data=np.random.normal(mu,sigma,10000)

normed_data=(data-mu)/sigma

print(stats.kstest(normed_data,'norm'))

# (0.0085805670733036798, 0.45316245879609179)

警告:(非常感谢user333700 !!)如果不了解mu和sigma,估计参数会使p值无效:

import numpy as np

import scipy.stats as stats

mu = 0.3

sigma = 5

num_test

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值