matlab 程序 求助

来源:百度知道 编辑:UC知道 时间:2024/05/30 12:14:22
下面是一教材例题 我按照教材输入 却 不能运行 老是报错。哪位高手帮忙一下。谢谢了。
M文件为
Function [varargout]=xxfx1(x,y)
%方差分析表
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

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
ta

小错误不少,调通了。

%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