原始数据很简单,来源于十个同分布的离散均匀分布(丢10个六面筛子),按照中心极限原则,每次
筛子之和应该逼近正态分布,下面是原程序:
/*离散均匀分布的正态逼近*/
data test(keep=sum);
do i=1 to 10000; /*掷10000次筛子*/
sum=0;
do j=1 to 10; /*每次掷10个6面筛子*/
sum=sum+1+int(6*ranuni(64)); /*计算10个筛子之和*/
end;
output;
end;
run;
proc univariate data=test;
var sum;
histogram/normal /*输出每次十个筛子之和的直方图及正态拟合结果*/
midpoints=10 to 60 by 1;
run;
quit;
直方图和正态曲线拟合得很好:
但是检验的参数却拒绝了零假设,就数据不是正态分布:
Goodness-of-Fit Tests for Normal Distribution
检验统计量p 值
Kolmogorov-SmirnovD0.15551280Pr > D<0.010
Cramer-von MisesW-Sq0.36855060Pr > W-Sq<0.005
Anderson-DarlingA-Sq1.94883650Pr > A-Sq<0.005
不是各位高手如何看待这个问题?