matlab回归分析怎么做?

2024-12-26 07:27:51
推荐回答(5个)
回答1:

X=[1 1 4 6 8 11 14 17 21]'
Y=[2.49 3.30 3.68 12.20 27.04 61.10 108.80 170.90 275.50]'
X=[ones(9,1), X]
[b,bint,r,rint,stats]= regress(Y,X)

输出向量b,bint为回归系数估计值和它们的置信区间,r,rint为残差及其置信区间,stats是用于检验回归模型的统计量,有三个数值,第一个是R2,其中R是相关系数,第二个是F统计量值,第三个是与统计量F对应的概率P,当P<α时拒绝H0,回归模型成立。

回答2:

你怎么又来问了?regress的帮助文档你到底看了没有啊,不都写得很清楚了么。
mnszyj一个地方写错了
x1=[2
2
2
2
2
2
5
5
5
5
5
5
7
7
7
7
7
7
10
10
10
10
10
10];
x2=[0
0
0
1
1
1
0
0
0
1
1
1
0
0
0
1
1
1
0
0
0
1
1
1];
x3=[0.25
0.50
0.75
0.25
0.50
0.75
0.25
0.50
0.75
0.25
0.50
0.75
0.25
0.50
0.75
0.25
0.50
0.75
0.25
0.50
0.75
0.25
0.50
0.75];
%输入自变量数据
y=[35
43
55
47
43
57
26
27
28
29
22
29
19
11
14
23
20
22
13
8
3
27
26
5];%输入因变量数据
x=[x1;x2;x3;x2.*x3;ones(size(x1))]';
[b,bint,r,rint,stats]=regress(y',x)

回答3:

X和Y的长度不等啊,X是16个数,Y是8个数。且X的前8个都是1。如果用X的后8个数与Y回归,则:
clear;clc
X=[1.0
1.0
1.0
1.0
1.0
1.0
1.0
1.0;
1.5
2.0
3.0
4.5
7.5
9.1
10.5
12.0]'
Y=[5.6
6.6
7.2
7.8
10.1
10.8
13.5
16.5]'
p=polyfit(X(:,2),Y,1)
xx=linspace(1.5,12,30);
yy=polyval(p,xx);
plot(X(:,2),Y,'o',xx,yy)
y=poly2sym(p,'x')
运行结果:
p
=
0.8950
4.1575
y
=
0.8950*x+4.1575

回答4:

利用matlab做回归分析的步骤:
x1=[]
x2=[]
x3=[]
x=[ones(length(x1)
x1
x2
x3];
[b,bint,r,rint,stats]=regress(y,x);
a=b(1),c=b(3),c=b(4),b=(2)
这样就可以得到y=a+bx1+cx2+dx3的表达式的系数。

回答5:

最多30