作业帮 > 综合 > 作业

用matlab解多元回归方程,Y = BX,Y,B,X为矩阵,我需要具体的MATLAB操作过程,好的话追加财富值

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/17 21:33:30
用matlab解多元回归方程,Y = BX,Y,B,X为矩阵,我需要具体的MATLAB操作过程,好的话追加财富值
年份 x1 x2 x3 x4 y
1992年25402.268126923.55.52780
1993年34879.8366735333.95.8834
1994年46923.5812848197.98.62648
1995年60750.5403660793.78.35555
1996年76094.92133271176.68.31917
1997年90995.330722789738.291194
1998年104498.52354484402.38.281147
1999年119897.93132089677.18.281367
2000年134610.46082799214.68.282073
2001年158301.938305109655.28.281646
2002年18500727990120332.78.281358
2003年221222.832115135822.88.281497
2004年25410742334159878.38.281267
2005年298755.731665184937.48.191161
2006年345603.5990469216314.47.972675
2007年403442.2460556.22265810.37.615261.56
2008年475166.6267113314045.46.951820.81
2009年606225535987340902.86.833277
2010年7257745456344012026.772808
求出 x1 、 x2 、x3 、 x4 与 y的多元回归方程
先输入X,Y矩阵,X为19 x 4的矩阵,Y为19 x 1的列向量用matlab函数regress计算多元回归方程>> B = regress(Y,X)B =   -0.0110    0.0062    0.0182  100.8726B就是回归方程的解x1~x4.函数regress的高级用法有>> [B,BINT] = regress(Y,X)B =   -0.0110    0.0062    0.0182  100.8726BINT =   -0.0272    0.0051    0.0020    0.0104   -0.0116    0.0479  -21.6227  223.3680BINT是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.5622RINT =  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('年度')