悬赏 10 个论坛币 未解决
我依照图片里的方法和算法求F分布的最短置信区间。
算法在图片里。
我自己编的matlab程序。
程序1:
function [z1,z2]=gold1(alpha)
e=10^-6;
a=0;
b=alpha;
beta1=a+0.382*(b-a);
beta2=a+0.618*(b-a);
L1=Fx1(1-alpha+beta1)-Fx1(beta1);
L2=Fx1(1-alpha+beta2)-Fx1(beta2);
while 1;
if L1<L2
b=beta2;
beta2=beta1;
L2=L1;
beta1=a+0.382*(b-a);
L1=Fx1(1-alpha+beta1)-Fx1(beta1);
else
a=beta1;
beta1=beta2;
L1=L2;
beta2=a+0.618*(b-a);
L2=Fx1(1-alpha+beta2)-Fx1(beta2);
end
if abs(beta2-beta1)<e
beta=(beta1+beta2)/2;
break;
end
end
z1=Fx1(1-alpha+beta);
z2=Fx1(beta);
end
程序2:
function [x]=Fx1(beta)
e=10^-6;
a=0;
b=1000;
c=(a+b)/2;
while 1;
x0=c;
F=Fcdf(x0,1,1);
if F<(1-beta)
a=c;
c=(a+b)/2;
else
b=c;
c=(a+b)/2;
end
if abs(b-a)<e;
x=c;
break;
end
end
x;
end
我是依照这里的算法编的,而我求的是F分布的最短置信区间。
本人是菜鸟,很多东西都没弄明白,在这里虚心向各位前辈、大侠求解!希望高手帮我修改修改,指点指点!感激不尽!!