用matlab解多元回归方程,Y = BX,Y,B,X为矩阵,我需要具体的MATLAB操作过程,年份 x1 x2 x3 x4 y1992年\x0525402.2\x05681\x0526923.5\x055.52\x057801993年\x0534879.8\x053667\x0535333.9\x055.8\x058341994年\x0546923.5\x058128\x0548197.9\

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 15:15:40
用matlab解多元回归方程,Y = BX,Y,B,X为矩阵,我需要具体的MATLAB操作过程,年份 x1 x2 x3 x4 y1992年\x0525402.2\x05681\x0526923.5\x055.52\x057801993年\x0534879.8\x053667\x0535333.9\x055.8\x058341994年\x0546923.5\x058128\x0548197.9\

用matlab解多元回归方程,Y = BX,Y,B,X为矩阵,我需要具体的MATLAB操作过程,年份 x1 x2 x3 x4 y1992年\x0525402.2\x05681\x0526923.5\x055.52\x057801993年\x0534879.8\x053667\x0535333.9\x055.8\x058341994年\x0546923.5\x058128\x0548197.9\
用matlab解多元回归方程,Y = BX,Y,B,X为矩阵,我需要具体的MATLAB操作过程,
年份 x1 x2 x3 x4 y
1992年\x0525402.2\x05681\x0526923.5\x055.52\x05780
1993年\x0534879.8\x053667\x0535333.9\x055.8\x05834
1994年\x0546923.5\x058128\x0548197.9\x058.62\x05648
1995年\x0560750.5\x054036\x0560793.7\x058.35\x05555
1996年\x0576094.9\x0521332\x0571176.6\x058.31\x05917
1997年\x0590995.3\x0530722\x0578973\x058.29\x051194
1998年\x05104498.5\x0523544\x0584402.3\x058.28\x051147
1999年\x05119897.9\x0531320\x0589677.1\x058.28\x051367
2000年\x05134610.4\x0560827\x0599214.6\x058.28\x052073
2001年\x05158301.9\x0538305\x05109655.2\x058.28\x051646
2002年\x05185007\x0527990\x05120332.7\x058.28\x051358
2003年\x05221222.8\x0532115\x05135822.8\x058.28\x051497
2004年\x05254107\x0542334\x05159878.3\x058.28\x051267
2005年\x05298755.7\x0531665\x05184937.4\x058.19\x051161
2006年\x05345603.59\x0590469\x05216314.4\x057.97\x052675
2007年\x05403442.2\x05460556.22\x05265810.3\x057.61\x055261.56
2008年\x05475166.6\x05267113\x05314045.4\x056.95\x051820.81
2009年\x05606225\x05535987\x05340902.8\x056.83\x053277
2010年\x05725774\x05545634\x05401202\x056.77\x052808
求出 x1 、 x2 、x3 、 x4 与 y的多元回归方程

用matlab解多元回归方程,Y = BX,Y,B,X为矩阵,我需要具体的MATLAB操作过程,年份 x1 x2 x3 x4 y1992年\x0525402.2\x05681\x0526923.5\x055.52\x057801993年\x0534879.8\x053667\x0535333.9\x055.8\x058341994年\x0546923.5\x058128\x0548197.9\
先输入X,Y矩阵,X为19 x 4的矩阵,Y为19 x 1的列向量
用matlab函数regress计算多元回归方程
>> B = regress(Y,X)
B =
-0.0110
0.0062
0.0182
100.8726
B就是回归方程的解x1~x4.
函数regress的高级用法有
>> [B,BINT] = regress(Y,X)
B =
-0.0110
0.0062
0.0182
100.8726
BINT =
-0.0272 0.0051
0.0020 0.0104
-0.0116 0.0479
-21.6227 223.3680
BINT是B的95%的置信区间矩阵
还有
[B,BINT,R,RINT] = REGRESS(Y,X)
等用法,用来发现奇异观测值,数据中的坏点.
R =
1.0e+003 *
0.0096
-0.0317
-0.6310
-0.7478
-0.5090
-0.2659
-0.2168
0.0287
0.5398
0.3247
0.2015
0.4328
0.0645
0.0711
1.1872
1.2417
-1.0127
-0.2618
-0.5622
RINT =
1.0e+003 *
-1.3735 1.3926
-1.4198 1.3565
-1.9006 0.6386
-2.0300 0.5345
-1.8297 0.8117
-1.6164 1.0847
-1.5825 1.1489
-1.3466 1.4040
-0.8002 1.8797
-1.0444 1.6938
-1.1572 1.5603
-0.8702 1.7358
-1.2683 1.3973
-1.1816 1.3238
0.1151 2.2593
0.6329 1.8505
-1.5208 -0.5045
-1.3322 0.8086
-1.4891 0.3647
如果RINT(i,:)所定区间没有包含0,
则第i个残差在默认的5%的显著性水平比我们所预期的要大这可说明第i个观测值是个奇异点
计算结果RINT中倒数第四第五行,满足上述条件,说明这两行,即2006年2007年的数据是奇异观测值
对应的残差R中这两行为 1.1872 1.2417相比其他年份的残差要大.
最后画图:
>> Y_wedge = B(1)*X(:,1)+B(2)*X(:,2)+B(3)*X(:,3)+B(4)*X(:,4);
>> year=[1992:1:2010];
>> plot(year,y,'*r',year,Y_wedge,'g');legend('观测值','估计值')
>> xlabel('年度')