多元线性回归程序案例与相应代码
程序1
%回归方程1系数求解 %program
x1=[6859 7702 8472 9422 10493]'; x2=[2366 2475 2622 2936 3255]'; X=[x1,x2]
y=[3055 3385 3765 4245 4776]'; X=[ones(5,1) x1 x2];
b=regress(y,X) %回归函数
程序2
计算回归方程1的解
x1=[6859 7702 8472 9422 10493]; x2=[2366 2475 2622 2936 3255]; g=[-532.3585 0.3648 0.4557]; for i=1:5
k(i)=g(1)+x1(i)*g(2)+x2(i)*g(3); end k
程序3
%回归方程2系数求解 %program
clc clear
sh=[52378 1417.4*10^8 275.06481*10^8 2.11154*10^8 5000 35791 331.9*10^8 89.55621*10^8 0.52307*10^8 4600 14436 318.2*10^8 150.89366*10^8 0.47096*10^8 3500 9312 395.2*10^8 166.91618*10^8 3.42308*10^8 4500 10085 33.8*10^8 8.47082*10^8 0.5555*10^8 3100 7701 312.6*10^8 153.68677*10^8 1.52673*10^8 3400];
x1=sh(:,1)./100; %对数据作了相应处理 x2=sh(:,2)./10^9; x3=sh(:,3)./10^8; x4=sh(:,4)./10^6; X=[x1,x2,x3,x4]; y=sh(:,5);
X=[ones(size(x1)),x1,x2,x3,x4];
format long eng %使用长浮点 [b,bint,r,rint,stxts]=regress(y,X) %对数据作回归 Q=r'*r;
sit=Q/(6-2)
%计算回归方程2的解 clear
c=[52378 1417.4*10^8 275.06481*10^8 2.11154*10^8; 35791 331.9*10^8 89.55621*10^8 0.52307*10^8; 14436 318.2*10^8 150.89366*10^8 0.47096*10^8; 9312 395.2*10^8 166.91618*10^8 3.42308*10^8; 10085 33.8*10^8 8.47082*10^8 0.5555*10^8; 7701 312.6*10^8 153.68677*10^8 1.52673*10^8]; x1=c(:,1)./100; x2=c(:,2)./10^9; x3=c(:,3)./10^8; x4=c(:,4)./10^6;
g=[2119.66 7.15 23.84 -5.22 5.10]; for i=1:6
k(i)=g(1)+x1(i)*g(2)+x2(1)*g(3)+x3(i)*g(4)+x4(i)*g(5); end k
程序5
%回归方程3系数求解 clc clear
sh1=[1659.18 1617.88 498.87 880 4757.73 895.84 1293.82 414.03 881 4938.34 341.38 1118.30 372.47 894 5243.60 102.74 1010.35 397.60 891 5452.75 58.60 994.08 467.31 957 5885.21]; x1=sh1(:,1); x2=sh1(:,2); x3=sh1(:,3); x4=sh1(:,4);
X=[x1,x2,x3,x4]; y=sh1(:,5);
X=[ones(size(x1)),x1,x2,x3,x4]; format long eng
[x,xint,r,rint,stats]=regress(y,X) Q=r'*r; sit=Q/(5-2)
程序6
%计算回归方程3的解 clear
c=[ 1659.18 1617.88 498.87 880 %对目标影响的矩阵
895.84 1293.82 414.03 881 341.38 1118.30 372.47 894 102.74 1010.35 397.60 891 58.60 994.08 467.31 957]; x1=c(:,1); x2=c(:,2); x3=c(:,3); x4=c(:,4);
g=[637.59 -1.14 1.27 3.29 2.63]; for i=1:5
%求解方程
k(i)=g(1)+x1(i)*g(2)+x2(1)*g(3)+x3(i)*g(4)+x4(i)*g(5); end k
程序7
%作图程序
a=[1990 200 1510 13 686 29 1996 2000 4839 41 1926 251 1997 2000 5160 39 2090 247 1998 3500 5425 65 2162 251 1999 3200 5854 55 2210 265 2002 4218 7703 56 2476 207 2003 4424 8472 52 2622 161 2004 4785 9422 51 2936 161]; x=a(:,1); y1=a(:,2); y2=a(:,3); y3=a(:,4); y4=a(:,5); y5=a(:,6);
plot(x,y1,'r',x,y2,'b',x,y4,'g') grid on xlabel('年') ylabel('元') title('')
legend('学费','城镇','乡村');
gtext('学费');gtext('城镇');gtext('乡村');
程序8
%作图程序
a=[1990 200 1510 13 686 29 1996 2000 4839 41 1926 251 1997 2000 5160 39 2090 247
1998 3500 5425 65 2162 251 1999 3200 5854 55 2210 265 2002 4218 7703 56 2476 207 2003 4424 8472 52 2622 161 2004 4785 9422 51 2936 161]; x=a(:,1); y3=a(:,4); y5=a(:,6);
plot(x,y5,'r',x,y3,'b') grid on xlabel('年') ylabel('%') title('')
legend('学费/农村','学费/城镇');
gtext('学费/农村');gtext('学费/城镇');
程序9
%作图程序 clc clear
num1= xlsread('biao.xls', 'A7:H20'); nian=num1(:,1); country=num1(:,3); sh=num1(:,5); jk=num1(:,6);
plot(nian,country,nian,sh,nian,jk) legend('国家投入','社会办学','捐款');
gtext('国家投入');gtext('社会办学');gtext('捐款'); grid on
程序10
%计算加权平均数
a=[6859 7702 8472 9422 10493]; b=[2366 2475 2622 2936 3255]; c=[0.38 0.39 0.41 0.42 0.43]; d=[0.62 0.61 0.59 0.58 0.57]; sum1=0; for i=1:5
sum(i)=a(i)*c(i)+b(i)*d(i); sum1=sum(i)+sum1 end
sum ; av=sum1/5; f=sum*3*0.25
y (Y/x1,x2) f(x1,x2) Y b0 b1x1 b2x2
以Y为被解释变量即学费,以x1 ,x2,x3,x4为解释变量建立多元回归模型如下:
y (Y/x1,x2,x3,x4) f(x1,x2,x3,x4)
假设Y为随机变量,且服从正态分布,列出下列回归方程:
Y b0 b1x1 b2x2 b3x3 b4x4
因为我们选择了上海、天津、黑龙江、湖南、青海、云南六个地区。所以i取1 6。 用最小二乘法对模型求解:
1 y1
1 y
2
1 y3
Y , X
1 y4
y
5
1
y6
1
x11x21x31x41x51x61
x12xx22xx32xx42xx52xx62x
132333435363
^ x 14
b0
^ x 24
b1
^ ^ x 34
, b b2
x 44 ^ b3 x 54 ^ b
4x 64
同样,以Y为被解释变量,以x1助学贷款,x2奖学金,x3勤工俭学,x4住宿费,建立多元回归模型:
y (Y/x1,x2,x3,x4) f(x1,x2,x3,x4)
我们先假设Y为随机变量,且服从正态分布,列出下列方程。
Y b0 b1x1 b2x2 b3x3 b4x4
因为我们考虑五类学生家庭情况,所以i取之为1、2、3、4、5。
1
y1 y 12 Y , X y3 1 y4 1
x11x21x31x41
x12xx22xx32xx42x
13233343
^
b0 ^ x 14
b1
^ ^ x 24
, b b2 x 34 ^ b3 x ^ 44
b 4
模型的求解方法同上
minQ(b0,b1,b2,b3,b4)
2ii 1
i 1
4
4
yi (b0 b1xi1 b2xi2 b3xi3 b4xi4
2
代入数据用Matlab软件编程求解(详见附件:程序5)得出:
b0 637.59
b1 1.14b2 1.27b3 3.29b4 2.63
代入回归方程:
y=637.59-1.14x1+1.27x2+3.29x3+2.63x4
将变量代入得出以下结果 (详见程序附件:程序6):
附录一 模糊综合分析程序 disp('请输入判断矩阵A(n阶)'); A=input('A='); [n,n]=size(A); x=ones(n,100); y=ones(n,100); m=zeros(1,100); m(1)=max(x(:,1)); y(:,1)=x(:,1); x(:,2)=A*y(:,1); m(2)=max(x(:,2)); y(:,2)=x(:,2)/m(2);
p=0.0001;i=2;k=abs(m(2)-m(1)); while k>p i=i+1;
相关推荐:
- [求职职场]加法运算定律的运用练习题
- [求职职场]大型石油化工工业过程节能新技术
- [求职职场]2015-2020年中国箱纸板行业分析与投资
- [求职职场]NADEX-IWC5A点焊机故障代码
- [求职职场]英语阅读 非常有用
- [求职职场]鲁卫疾控发〔2012〕2号(联合,印发山东
- [求职职场]2014年莆田公务员行测技巧:数字推理的
- [求职职场]基于最近发展区理论的高中数学课堂有效
- [求职职场]与贸易有关的知识产权协议
- [求职职场]【王风范】微演说·职场演说三
- [求职职场]新时代国珍健康大课堂
- [求职职场]群论期末考试复习题
- [求职职场]施工现场消防安全专项施工方案(范本)-
- [求职职场]初中物理光学知识点归纳完美版
- [求职职场]毕业设计总结与体会范文
- [求职职场]江南大学2018年上半年展示设计第1阶段
- [求职职场]景尚乡民兵参战支前保障方案
- [求职职场]【优质】2019年工会职工之家建设工作总
- [求职职场]数据库技术与应用—SQL Server 2008(第
- [求职职场]汽车变速箱构造与工作原理
- 首钢工业区工业遗产资源保护与再利用研
- 第4课 《大学》节选
- 2016程序文件——检验检测结果发布程序
- 2011年高考试题文言文阅读全解释__2011
- 化学是一门基础的自然科学
- 海外做市商制度的借鉴意义
- 外国建筑史复习资料(
- 七年级下思想品德期末综合测试(二)
- 思政课部2013年上学期教学工作总结
- 电大国际公法任务3 0004
- 《圆的认识》教学设计
- 中国轨道交通牵引变流器行业市场发展调
- 中泰证券#定期报告:坚守时代硬科技和
- 浅论企业财务管理与企业经营投资风险的
- 大功率半导体激光器光纤耦合技术调研报
- 中国传统家具的现状与发展探讨
- Broadcom数字电视芯片助海尔扩展高清电
- 新HSK4词汇练习 超全(五)
- 2013届高考数学单元考点复习12
- 雨霖铃精品课件




