fill([kai2,x1,la3],[0,y1,0],'m')
end
fprintf('---------------------------------------------------------------------------\n');
fprintf('样本数\t\t区间数\t\t未知参数\t\t自由度\t\t开方和\t\t右侧概率\t\t显著性\n');
fprintf('---------------------------------------------------------------------------\n');
fprintf('%4d\t\t%4d\t\t%4d\t\t%4d\t\t%.6f\t\t%.4f\t\t%4s\n',n,k,r,k-r-1,kai2,pz,xzx);
fprintf('---------------------------------------------------------------------------\n');
fprintf('\n\n');
holdoff
离散型分布正态性检验
-------------------------------------------------------------------------------------
样本数区间数未知参数自由度开方和临界值右侧概率显著性
-------------------------------------------------------------------------------------
636051.666711.07050.8931-
-------------------------------------------------------------------------------------
【练习3.1】(基本计算,两个正态总体的假设检验,检验水平),对数学分析I
(1)求课程中“专业(数学、信计)””的考试人数、平均分、最小值、最大值、极差、标准差、及格人数、及格率、优良人数(大于等于80)、优良率;写出标准差的计算公式。
(2)对“专业(数学、信计)”,检验方差、平均分是否相等。
(3)对“专业(数学、信计)”,检验及格率、优秀率是否相等。
(4)对“全体成绩”的分布进行检验,首先估计期望和方差,画出正态分布的密度函数曲线以及样本密度散点,对假设的正态分布进行检验。
Matlab程序实现:
sy=[606063634069656072676278829069607276789369689571836073736074777185708960617762686070668474696160867369747174];
se=[508167657771766289656562626078816670805369666148666961606085526860746062436160606470746573796043766663606068606060677464];
alpha=0.05;%取显著水平为0.05
sy1=length(sy);se1=length(se);%人数
sy2max=max(sy);sy2min=min(sy);se2max=max(se);se2min=min(se);%最大值,最小值
sy3=range(sy);se3=range(se);%极差
sy4=mean(sy);se4=mean(se);%平均分
sy5=sqrt(sum((sy-sy4).^2)/(sy1));se5=sqrt(sum((se-se4).^2)/(se1));%标准差
%sy5=std(sy);se5=std(se);或
sy6=length((find(sy>=60)));se6=length((find(se>=60)));%及格人数
sy7=length((find(sy>=80)));se7=length((find(se>=80)));%优秀人数
sy8=sy6/sy1;se8=se6/se1;%及格率
sy9=sy7/sy1;se9=se7/se1;%优秀率
fprintf('\t人数\t平均分\t最小值\t最大值\t极差\t\t标准差\t\t及格人数及格率\t优秀人数优秀率\n');
fprintf('--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n');
fprintf('数学%4d\t%10.4f\t%4d\t\t%4d\t\t%4d\t\t%10.4f\t%4d\t%10.4f\t%4d\t%10.4f\n',sy1,sy4,sy2min,sy2max,sy3,sy5,sy6,sy8,sy7,sy9)
fprintf('信计%4d\t%10.4f\t%4d\t\t%4d\t\t%4d\t\t%10.4f\t%4d\t%10.4f\t%4d\t%10.4f\n',se1,se4,se2min,se2max,se3,se5,sy6,sy8,se7,se9)
fprintf('\n');
%方法一
fprintf('检验数学和信计的方差是否相等\n');
[h1,p1,varci1,stats1]=vartest2(sy,se,alpha,'both');
if(h1==0)
disp('结果:
方差相等');
else
disp('结果:
方差不相等');
end
fprintf('\n');
%%方法二
%F=sy5^2/se5^2;%统计量F,满足F分布
%alpha=0.05;%取显著水平为0.05
%Fla1=finv(alpha/2,sy1-1,se1-1);Fla2=finv(1-alpha/2,sy1-1,se1-1);%求F的临界值
%if(F>Fla1&&F%MM='数学分析1和数学分析2的方差无显著差异';
%else
%MM='数学分析1和数学分析2的方差有显著差异';
%end
%fprintf('检验数学分析1和数学分析2的方差是否相等\n');
%fprintf('统计量F的值\t\t\t显著性水平\t\t临界值\t\t\t\t\t检验结果\n');
%fprintf('%.4f\t\t\t\t%.4f\t\t\t%.4f\t\t\t%15s\n',F,alpha,Fla1,MM);
%fprintf('\n\n');
%方法一
fprintf('检验数学和信计的平均分是否相等\n');
[h2,p2,muci2,stats2]=ttest2(sy,se,alpha,'both');
if(h2==0)
disp('结果:
平均分相等');
else
disp('结果:
平均分不相等');
end
fprintf('\n');
%%方法二
%%%%%方法三
%sw=((sy1-1)*sy5^2+(se1-1)*se5^2)/(sy1+se1-2);
%T=(sy4-se4)/sw/sqrt(1/sy1+1/se1);%统计量T,满T分布
%Tla1=tinv(alpha/2,sy1+se1-2);Tla2=tinv(1-alpha/2,sy1+se1-2);%求出T的临界值
%if(abs(T)%XX='数学分析1和数学分析2的平均分无显著差异';
%else
%XX='数学分析1和数学分析2的平均分有显著差异';
%end
%fprintf('检验数学分析1和数学分析2的平均分是否相等\n');
%fprintf('统计量T的值\t\t\t显著性水平\t\t临界值\t\t\t\t\t检验结果\n');
%fprintf('%.4f\t\t\t\t%.4f\t\t\t%.4f?
?
%.4f\t\t%15s\n',T,alpha,Tla1,Tla2,XX);
%fprintf('\n\n');
p=(sy7+se7)/(sy1+se1);
U=(sy9-se9)/sqrt((sy9+se9)*p*(1-p));
Ua=norminv(1-alpha/2);
if(abs(U)>Ua)
disp('优秀率无显著差异');
else
disp('优秀率有显著差异');
end
p=(sy6+se6)/(sy1+se1);
U=(sy8-se8)/sqrt((sy8+se8)*p*(1-p));
Ua=norminv(1-alpha/2);
if(abs(U)>Ua)
disp('及格率无显著差异');
else
disp('及格率有显著差异');
end
[h3,p3,kstat3,critval3]=lillietest(sy,alpha);