多元线性回归 matlab中求解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

多元线性回归matlab中求解

源代码:

y=data(:,1);

>> x=data(:,2:3);

>> [b,bint,r,rint,stats]=regress(y,x)

结果:

b =1.6031

21.0280

bint =0.6449 2.5612

14.4526 27.6034

r =-16.2442

8.8754

17.5828

8.3155

7.6692

-20.7990

0.1578

9.1298

21.1145

-28.9567

rint =-54.5200 22.0316

-28.0267 45.7775

-15.2745 50.4401

-29.9540 46.5850

-30.7374 46.0758

-57.6551 16.0572

-40.7942 41.1098

-30.8252 49.0848

-15.2155 57.4446

-59.3228 1.4095

stats =1.0148 742.1191 0.0000 322.5068

分析结果:

stats四个值说明:判决系数r^2,,F统计值,p值,误差方差

y=a1*x(1)+a2*x(2);其中a1=1.6031,a2=21.0280,

a1的置信区间【0.6449,2.5612】,a2的置信区间【14.45426,27.6043】,p小于0.05,说明显著效果很好,越小越好

在spss中求解:

线性规划matlab求解

例1:c=[2;3;1]; mix z=2*x1+3*x2+x3 >> a=[1 4 2;3 2 0]; s.t 1.x1+4*x2+2*x3>=8; >> b=[8;6]; 2.3*x1+2*x2>=6;

>> [x,y]=linprog(c,-a,-b,[],[],zeros(3,1) ) 3.x1>=0,x2>=0,x3>=0结果:x =0.8066

1.7900

0.0166 %最优解

y =7.0000 %最优值

例2:c=[2;3;-5]; max z=2*x1+3*x2-5*x3

a=[-2,5,-1];b=-10; s.t 1.x1+x2+x3=7;

aeq=[1,1,1]; 2.2*x1-5*x2+x3>=10;

beq=7; 3.x1>=0,x2>=0,x3>=0

%是求最大值而不是最小值,注意这里是"-c"而不是"c"

x=linprog(-c,a,b,aeq,beq,zeros(3,1))

value=c'*x

结果:x =6.4286

0.5714

0.0000 %最优解

value = 14.5714 %最优值

例3.(整数规划)

灰色预测

clear

syms a b;

c=[a b]';

A=[89677,99215,109655,120333,135823,159878,182321,209407,246619,300670];

B=cumsum(A); %原始数据累加

n=length(A);

for i=1:(n-1)

C(i)=(B(i)+B(i+1))/2; %生成累加矩阵end

% 计算待定参数的值

D=A;D(1)=[];

D=D' ;

E=[-C;ones(1,n-1)];

c=inv(E*E')*E*D;

c=c' ;

a=c(1);b=c(2);

% 预测后续数据

F=[];F(1)=A(1);

for i=2:(n+10)

F(i)=(A(1)-b/a)/exp(a*(i-1))+b/a ;

end

G=[];G(1)=A(1);

for i=2:(n+10)

G(i)=F(i)-F(i-1); %得到预测出来的数据end

t1=1999:2008;

t2=1999:2018;

G

plot(t1,A,'o',t2,G)

结果; 1.0e+006 *

0.0897

0.0893

0.1034

0.1196

0.1385

0.1602

0.1854

0.2146

0.2483

0.2873

0.3325

0.3847

0.4452

0.5152

0.5962

0.6899

0.7984

0.9239

1.0691

1.2371

相关文档
最新文档