matlab kstest,用matlab软件实现Kolmogorov-Smirnov检验 - Freya's Blog - New Morning

K-S检验是来自某一特定分布的方法。它的检验方法是以样本数据的经验分布函数与特定理论分布比较,若两者间的差距很小,则推论该样本取自某特定分布族。

即对于假设检验问题:

H=0:样本所来自的总体分布服从某特定分布;

H=1:样本所来自的总体分布不服从特定分布。

k-s检验的检验统计量是

57153b15bc929ecfa355eb4b9648562f9cd6451f.png

其中,

94f2768082614c2188dbaa714099b745dc5638c2.png

是经验分布函数,

19e67ec37b360f83f7aadade0d6cd63d6d44da7d.png是理论分布函数。

经验分布函数:

65cae7b7c24204f1bbf133fd6426bb5393df2f0a.png是抽自总体X的一个样本,观察值为

2b4dcd0a620dd1553ba0dfec424a076f502f79d2.png,次序观测值为

e58235b09cffb9ddb533f760506a248471bae442.png,则总体X的经验分布函数定义为

1195998965024540cf1b628d4bcbc9f35dc230ea.png

c1ee3649785f891a8847e23998ce031bba23b2fb.png

理论分布函数:

由于我们产生的是服从0-1均匀分布的随机数,(a,b)均匀分布的分布函数为

6725fede4bc69f2db1653ca439fa5815254eaf0a.png

将a=0,b=1代入公式,可得到数据的理论分布函数。

matlab代码如下:

path=strcat(pwd,'\filename');

x=importdata(path);

x=sort(x);

%画出经验分布函数

figure

cdfplot(x);

hold on

%画出标准分布函数

plot(x,unifcdf(x,0,1),'r-');

hold off

%检验数据序列符合均匀分布的程度

[H,pvalue]=kstest(x[x,unifcdf(x,0,1)],0.05);

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值