%Function [varargout]=xxfx1(x,y)
%方差分析表
x=[76.9,82.1,80.1,77.1,82.4,85.1,87.4,85.2,82.6,86.5,77.6,76.1,73.7,87.6,73.1,69.7,70.2,
68.7,64.1,86.0,104.5,90.7,89.7,67.5,66.1,68.8,69.7,72.5,73.6,73.2,71.6,80.7,68.5,64.2]
y=[65.0,74.2,69.8,76.1,75.3,77.4,76.7,77.4,76.7,75.5,67.2,66.2,64.1,76.1,68.4,67.2,64.9,
65.7,60.8,77.9,95.8,80.2,80.2,63.6,61.9,64.7,62.9,66.4,63.1,67.4,68.9,70.3,64.6,59.6]
alpha1=0.05
alpha2=0.01
x=x(:)
y=y(:)
n=length(y)
SST=sum((y.*y))-(sum(y)).*(sum(y))/n
lxx=sum(x.*x)-sum(x).*sum(x)/n
lxy=sum(x.*y)-sum(x).*sum(y)/n
SSR=lxy.*lxy/lxx
SSE=SST-SSR
df1=1
df2=n-2
df3=n-1
VR=SSR/df1
VE=SSE/df2
Fb=VR/VE
F=finv(1-[alpha1;alpha2],df1,df2)
F1=min(F)
F2=max(F)
if Fb>F2
tst='**'
else if (Fb>F1)&(Fb<=F2)
tst='*'
else
tst=' '
end
end
format short g
table=cell(4,7)
table{1,1}='方差来源'
table{2,1}='回归'
table{3,1}='剩余'
table{4,1}='总和'
table{1,2}='偏平方和'
table{2,2}=SSR
table{3,2}=SSE
table{4,2}=SST
table{1,3}='自由度'
table{2,3}=df1
table{3,3}=df2
table{4,3}=df3
table{1,4}='方差'
table{2,4}=VR
table{3,4}=VE
table{1,5}='F比'
table{2,5}=Fb
table{1,6}='Fα'
table{2,6}=F1
table{3,6}=F2
table{1,7}='显著性'
table{2,7}=tst
if nargout>=1
varargout{1}=table
else
disp(table)
end
问题
1 F=finv(1-[alpha1;alpha2],df1,df2)这个语句是什么意思?怎么利用概率论知识解释?
2 format short g
这个语句也没看懂,能解释一下吗?
3 if nargout>=1
varargout{1}=table 这个循环调用的函数也没看明白。
4 disp(table) 语句的意思也没弄明白。
不好意思,小弟是matlab初学者,麻烦高手指教了。谢谢了。