⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 源程序.m

📁 利用matlab编程进行参数检验
💻 M
字号:
%f1=str2double(get(handles.f1_input,'string'));
%f2=str2double(get(handles.f2_input,'string'));
%t=eval(get(handles.t_input,'string'));
  




function junzhicha( ) %设有两个正态总体其分布分别为N(mu1,sigma1^2)
                    %和N(mu2,sigma2^2),求两个正态总体均值差的区间估计
a=[6.683 6.681 6.676 6.678 6.679 6.672];
b=[6.661 6.661 6.667 6.667 6.664];
aj=mean(a);  %得到样本均值
bj=mean(b);
Sa=var(a);  %得到样本方差
Sb=var(b);
n1=length(a);  %得到样本容量
n2=length(b);
alpha=0.05;   %给定常数alpha
u2a=norminv(2*alpha,0,1);  %给定alpha,得到标准正态分布的双侧分位数
Sy=sqrt(Sa/n1+Sb/n2);  %Sy为样本均值差的标注差
S=sqrt(((n1-1)*Sa+(n2-1)*Sb)/(n1+n2-2));
t2a=tinv(2*alpha,n1+n2-2);   %给定alpha,得到t分布的双侧分位数
sigma=0.2;
sigma1=0.1;
sigma2=0.4;
if sigma~=NaN   %判断sigma是否已知
    f0=0;
else
    f0=1;
end
if sigma1~=NaN   %判断sigma1是否已知
    f1=0;
else
    f1=1;
end
if sigma2~=NaN   %判断sigma2是否已知
    f2=0;
else
    f2=1;
end
if f1==0 & f2==0    %当sigma1及sigma2为已知时
    Sz=sqrt(sigma1^2/n1+sigma2^2/n2);  %Sz为总体均值差的标注差
    sh=aj-bj+u2a*Sz
    xi=aj-bj-u2a*Sz
elseif f1==1 & f2==1 & n1>=50 & n2>=50  %当igma1与sigma2均为未知且n1与n2均不小于50时
    sh=aj-bj+u2a*Sy
    xi=aj-bj-u2a*Sy
else sigma1==sigma2 & sigma1==sigma & f0==1 & f1==1 & f2==1   %当sigma1与sigma2均为未知,且sigma1^2=sigma2^2=sigma^2时
    sh=a1-b1+t2a*S*sqrt(1/n1+1/n2)
    xi=a1-b1-t2a*S*sqrt(1/n1+1/n2)
end 


mu1=6;
mu2=7;
if mu1~=NaN    %判断mu1是否已知
    f3=0
else
    f3=1
end
if mu2~=NaN     %判断mu2是否已知
    f4=0
else
    f4=1
end
F=finv(alpha/2,n2-1,n1-1);   %给定alpha,得到f分布的双侧分位数
while f3==1 & f4==1
    sh=F*Sa/Sb
    xi=Sa/Sb*F
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -