数学建模社区-数学中国

标题: 如何在MATLAB中进行正态分布检验? [打印本页]

作者: ufo911l    时间: 2010-6-7 13:37
标题: 如何在MATLAB中进行正态分布检验?
    我有一组数据a=[1.0100   -0.0393    0.2301    0.8424    0.8792   -0.0879    0.0552    0.0204    0.0101   -0.0922   -0.0971    0.0009   -0.0356   -0.1138    0.1867 0.1169    0.1410    0.1687   -0.0061    0.0422   -0.1884    0.1478    0.0077   -0.2228   -0.1573   -0.3110   -0.1979   -0.3573   -0.0028    0.0815 -0.1985   -0.0650   -0.0129    0.4747    0.4424   -0.0576   -0.0463   -0.0499    0.0159    0.1248   -0.2422    0.2009   -0.1074   -0.1960   -0.3907 -1.1918]。
    现在想看它是否符合正态分布,我已用过normplot()画过图,有一定的正态性。
    那么如何用假设检验来做呢?(通过计算某些值,来判断数据符合正态分布的可能性)

作者: YoonA    时间: 2010-6-7 15:41
抢个沙发坐坐~~~~~~O(∩_∩)O~
作者: qq397277891    时间: 2010-6-7 16:38
本帖最后由 wujianjack2 于 2013-8-22 13:57 编辑

A=A(:);
alpha=0.05;
[mu,sigma]=normfit(A);
p1=normcdf(A,mu,sigma);
[H1,s1]=kstest(A,[A,p1],alpha);
n=length(A);
if H1==0
    disp('该数据服从正态分布。')
end
作者: ufo911l    时间: 2010-6-7 17:08
谢谢了。
作者: mathszy    时间: 2010-6-7 18:27
也可用偏度峰度检验:
>>[h,p]=jbtest(a,0.05)
结果为:h =  1;p =  1.5250e-006
不过从此结果可知,此组数据不符从正态分布。这是由于不同的检验方法效能造成的。
作者: ufo911l    时间: 2010-6-7 21:23
回复 mathszy 的帖子


    用3#的方法结果是通过的,那它到底符不符合正态分布呢?
作者: mathszy    时间: 2010-6-10 21:18
这就是不同的检验方法其检验功效(power=1-beta)与第I型误差(alpha)均可能不同,故选用方法时要看各方法适用范围,当然某种条件下两种检验方法都适用,但又不知道何种方法检验效果更好,则自己采用熟知的或有利于自己结果的检验方法吧(这样说好象有作弊嫌疑哈)!
作者: No.37927    时间: 2011-6-4 09:50
与楼主同困扰啊`
作者: 小盆子。。。    时间: 2013-8-22 10:08
同问,还有很多组数据怎么弄进去,一起检验
作者: leixuexue    时间: 2013-8-22 14:26
matlab中用jbtest检验正态分布,结果中的h和p具体代表什么含义啊,尤其是p的含义,求解释
作者: 小盆子。。。    时间: 2013-8-23 10:34
leixuexue 发表于 2013-8-22 14:26
matlab中用jbtest检验正态分布,结果中的h和p具体代表什么含义啊,尤其是p的含义,求解释

同求,同求
作者: xiaoOMming    时间: 2013-8-23 11:09
leixuexue 发表于 2013-8-22 14:26
matlab中用jbtest检验正态分布,结果中的h和p具体代表什么含义啊,尤其是p的含义,求解释

h为测试结果,若h=0,则可以认为X是服从正态分布的;若h=1,则可以否定X服从正态分布;
p为接受假设的概率值,P越接近于0,则可以拒绝是正态分布的原假设;

作者: leixuexue    时间: 2013-8-23 17:53
xiaoOMming 发表于 2013-8-23 11:09
h为测试结果,若h=0,则可以认为X是服从正态分布的;若h=1,则可以否定X服从正态分布;
p为接受假设的概率值, ...

谢了,我们也是照着这样做的
作者: 夏丹丹    时间: 2013-8-23 21:02
A=A(;
alpha=0.05;
[mu,sigma]=normfit(A);
p1=normcdf(A,mu,sigma);
[H1,s1]=kstest(A,[A,p1],alpha);
n=length(A);
if H1==0
    disp('该数据服从正态分布。')
end
这个的原理是什么啊?
作者: 12081238zhuwy    时间: 2014-9-5 15:41
有没有好心人会啊,同求解答
作者: zhjx384652673    时间: 2016-1-11 19:55
我来混一下体力~





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5