多元线性回归分析Word文档格式.docx
《多元线性回归分析Word文档格式.docx》由会员分享,可在线阅读,更多相关《多元线性回归分析Word文档格式.docx(33页珍藏版)》请在冰豆网上搜索。
对回归系数作检验可直接用式(4.2.2)中的bi及其标准误差所提供的信息;
但要想对各回归系数之间进行比较就不那么方便了,因为各bi的值受各变量单位的影响。
为便于比较,需要求出标准化回归系数,消除仅由单位不同所带来的差别。
设∶与一般回归系数bi对应的标准化回归系数为Bi,则
(4.2.3)
式(4.2.3)中的SXi、SY分别为自变量Xi和Y的标准差。
值得注意的是∶一般认为标准化回归系数的绝对值越大,所对应的自变量对因变量的影响也就越大。
但是,当自变量彼此相关时,回归系数受模型中其他自变量的影响,若遇到这种情况,解释标准化回归系数时必须采取谨慎的态度。
当然,更为妥善的办法是通过回归诊断(TheDiagnosisofRegression),了解哪些自变量之间有严重的多重共线性(Multicoll-inearity),从而,舍去其中作用较小的变量,使保留下来的所有自变量之间尽可能互相独立。
此时,利用标准化回归系数作出解释,就更为合适了。
4.自变量为定性变量的数量化方法
设某定性变量有k个水平(如ABO血型系统有4个水平),若分别用1、2、…、k代表k个水平的取值,是不够合理的。
因为这隐含着承认各等级之间的间隔是相等的,其实质是假定该因素的各水平对因变量的影响作用几乎是相同的。
比较妥当的做法是引入k-1个哑变量(DummyVariables),每个哑变量取值为0或1。
现以ABO血型系统为例,说明产生哑变量的具体方法。
当某人为A型血时,令X1=1、X2=X3=0;
当某人为B型血时,令X2=1、X1=X3=0;
当某人为AB型血时,令X3=1、X1=X2=0;
当某人为O型血时,令X1=X2=X3=0。
这样,当其他自变量取特定值时,X1的回归系数b1度量了E(Y/A型血)-E(Y/O型血)的效应;
X2的回归系数b2度量了E(Y/B型血)-E(Y/O型血)的效应;
X3的回归系数b3度量了E(Y/AB型血)-E(Y/O型血)的效应。
相对于O型血来说,b1、b2、b3之间的差别就较客观地反映了A、B、AB型血之间的差别。
[说明] E(Y/*)代表在“*”所规定的条件下求出因变量Y的期望值(即理论均值)。
5.变量筛选
研究者根据专业知识和经验所选定的全部自变量并非对因变量都是有显著性影响的,故筛选变量是回归分析中不可回避的问题。
然而,筛选变量的方法很多,详见本章第3节,这里先介绍最常用的一种变量筛选法──逐步筛选法。
模型中的变量从无到有,根据F统计量按SLENTRY的值(选变量进入方程的显著性水平)决定该变量是否入选;
当模型选入变量后,再根据F统计量按SLSTAY的值(将方程中的变量剔除出去的显著性水平)剔除各不显著的变量,依次类推。
这样直到没有变量可入选,也没有变量可剔除或入选变量就是刚剔除的变量,则停止逐步筛选过程。
在SAS软件中运用此法的关键语句的写法是∶
MODELY=一系列的自变量/SELECTION=STEPWISESLE=p1SLS=p2;
具体应用时,p1、p2应分别取0~1之间的某个数值。
6.回归诊断
自变量之间如果有较强的相关关系,就很难求得较为理想的回归方程;
若个别观测点与多数观测点偏离很远或因过失误差(如抄写或输入错误所致),它们也会对回归方程的质量产生极坏的影响。
对这两面的问题进行监测和分析的方法,称为回归诊断。
前者属于共线性诊断(The Diagnosis of Collinearity)问题;
后者属于异常点诊断(The DiagnosisofOutlier)问题。
关于这些内容,我们将在下一节中结合SAS输出结果作些必要的解释,详细讨论参见本章第4节。
第2节 应用举例
[例4.2.1]某精神病学医生想知道精神病患者经过6个月治疗后疾病恢复的情况Y是否能通过精神错乱的程度X1、猜疑的程度X2两项指标来较为准确地预测。
资料如下,试作分析。
No. Y X1 X2 No. Y X1 X2
1 28 3.36 6.9 9 23 3.15 6.5
2 24 3.23 6.5 10 16 2.60 6.3
3 14 2.58 6.2 11 13 2.70 6.9
4 21 2.81 6.0 12 22 3.08 6.3
5 22 2.80 6.4 13 20 3.04 6.8
6 10 2.74 8.4 14 21 3.56 8.8
7 28 2.90 5.6 15 13 2.74 7.1
8 8 2.63 6.9 16 18 2.78 7.2
[分析与解答] 先建立数据文件PDH.DAT,输成16行3列的形式。
显然,这是二元线性回归分析问题。
因为自变量个数很少,我们先用不筛选自变量的方法建立回归方程,视结果的具体情况再确定进一仓析方案。
[SAS程序]──[D4P14.PRG]
DATAabc1;
DATAabc2;
DATAabc3;
INFILE'
c:
\pdh.dat'
;
INFILE'
INFILE'
INPUTyx1x2;
INPUTyx1x2;
INPUTyx1x2;
IF_N_=8THENDELETE;
PROCREG;
PROCREG;
PROCREG;
MODELy=x1x2/ MODELy=x1x2/
MODELy=x1x2;
NOINTPR;
NOINTPR;
RUN;
RUN;
RUN;
(程序1) (程序2) (程序3)
[程序修改指导] 此程序实际上是3个独立的程序,它们并不是一次写出来的。
程序1很简单,它拟合Y关于X1、X2的二元线性回归方程;
从运算结果得知∶方程的截距项与0之间无显著性差别,表明可将截距项去掉(加上选择项NOINT),于是,产生了程序2;
程序2的运算结果表明∶第8个观测点为可疑的异常点,试着将此点剔除后看看结果有什样的变化,胀产生了程序3。
程序2与程序3MODEL语句中的选择项P、R分别要求计算各点上因变量的预测值和进行残差分析。
欲求标准化回归系数,可在MODEL语句的“/”之后加上“STB”。
[输出结果及其解释] ParameterEstimates
Parameter Standard TforH0:
Variable DF Estimate Error Parameter=0 Prob>
|T|
INTERCEP 1 -2.588983 7.74143989 -0.334 0.7434
X1 1 18.372877 2.47536610 7.422 0.0001
X2 1 -4.738875 0.87135198 -5.439 0.0001
以上是程序1的参数估计结果,不难看出截距项可以去掉。
NOTE:
Nointerceptinmodel.R-squareisredefined.
DependentVariable:
Y AnalysisofVariance
Sumof Mean
Source DF Squares Square FValue Prob>
F
Model 2 6110.88058 3055.44029 474.661 0.0001
Error 14 90.11942 6.43710
UTotal 16 6201.00000
RootMSE 2.53714 R-square 0.9855
DepMean 18.81250 AdjR-sq 0.9834
C.V. 13.48648
ParameterEstimates
Parameter Standard TforH0:
Variable DF Estimate Error Parameter=0 Prob>
X1 1 17.806056 1.74594949 10.198 0.0001
X2 1 -4.873584 0.74775285 -6.518 0.0001
这是程序2的方差分析和参数估计结果,方程与各参数的检验结果都有显著性意义,所求得的二元线性回归方程为∶Y^=17.806056X1-4.873584X2,SY.X=2.53714。
SY.X是回归模型误差的均方根,此值越小,表明所求得的回归方程的精度越高(下同)。
① ② ③ ④ ⑤ ⑥
DepVar Predict StdErr Student Cook'
s
Obs Y Value Predict Residual -2-1-012 D
1 28.0000 26.2006 0.983 0.769 | |* | 0.052
2 24.0000 25.8353 1.015 -0.789 | *| | 0.059
3 14.0000 15.7234 0.582 -0.698 | *| | 0.014
4 21.0000 20.7935 0.718 0.085 | | | 0.000
5 22.0000 18.6660 0.609 1.354 | |** | 0.056
6 10.0000 7.8505 1.645 1.113 | |** | 0.449
7 28.0000 24.3455 1.046 1.581 | |*** | 0.256
8 8.0000 13.2022 0.829 -2.170 | ****| | 0.281
9 23.0000 24.4108 0.906 -0.595 | *| | 0.026
10 16.0000 15.5922 0.599 0.165 | | | 0.001
11 13.0000 14.4486 0.757 -0.598 | *| | 0.017
12 22.0000 24.1391 0.914 -0.904 | *| | 0.061
13 20.0000 20.9900 0.682 -0.405 | | | 0.006
14 21.0000 20.5020 0.874 0.209 | | | 0.003
15 13.0000 14.1861 0.817 -0.494 | | | 0.014
16 18.0000 14.4110 0.827 1.496 | |** | 0.133
这是对程序2中的二元回归模型作残差分析的结果,从第④、⑤两列发现第8个观测点所对应的学生化残差的绝对值大于2(因STUDENT=-2.170),故认为该点可能是异常点,需认真检查核对原始数据。
第①~③列分别为因变量的观测值、预测值及其标准误差;
其后的普通残差及其标准误差被省略了;
第⑥列为Cook'
sD统计量(参见本章第6节)。
下面的内容是与因变量的残差有关的其他几个统计量(仍由程序2输出)∶
SumofResiduals -0.296920582 这是各观测点残差之和;
SumofSquaredResiduals 90.1194 这是各观测点残差平和;
PredictedResidSS(Press) 122.8819 这是各观测点预测平和。
[说明] 关于预测平方和Press的定义参见本章第6节。
Model 2 6077.17852 3038.58926 660.326 0.0001
Error 13 59.82148 4.60165
UTotal 15 6137.00000
RootMSE 2.14515 R-square 0.9903
DepMean 19.53333 AdjR-sq 0.9888
C.V. 10.98198
X1 1 16.972158 1.51154343 11.228 0.0001
X2 1 -4.465611 0.65190815 -6.850 0.0001
这是程序3的方差分析和参数估计结果,方程与各参数的检验结果都有显著性意义,所
求得的二元线性回归方程为∶Y^=16.972158X1-4.465611X2,SY.X=2.14515。
DepVar Predict StdErr Student Cook'
Obs Y Value Predict Residual -2-1-012 D
1 28.0000 26.2137 0.831 0.903 | |* | 0.072
2 24.0000 25.7936 0.858 -0.912 | *| | 0.079
3 14.0000 16.1014 0.514 -1.009 | **| | 0.031
4 21.0000 20.8981 0.608 0.050 | | | 0.000
5 22.0000 18.9421 0.526 1.470 | |** | 0.069
6 10.0000 8.9926 1.460 0.641 | |* | 0.177
7 28.0000 24.2118 0.886 1.939 | |*** | 0.386
8 23.0000 24.4358 0.766 -0.717 | *| | 0.038
9 16.0000 15.9943 0.530 0.003 | | | 0.000
10 13.0000 15.0121 0.677 -0.988 | *| | 0.054
11 22.0000 24.1409 0.773 -1.070 | **| | 0.085
12 20.0000 21.2292 0.584 -0.596 | *| | 0.014
13 21.0000 21.1235 0.777 -0.062 | | | 0.000
14 13.0000 14.7979 0.731 -0.891 | *| | 0.052
15 18.0000 15.0302 0.740 1.475 | |** | 0.147
这是对程序3中的二元回归模型作残差分析的结果,没有发现异常点。
下面的内容是与因变量的残差有关的其他几个统计量(仍由程序3输出)∶
SumofResiduals 0.0827062059
SumofSquaredResiduals 59.8215
PredictedResidSS(Press) 79.9550
比较第8个观测点去掉前后预测平和Press的值从122.8819降为79.9550;
对整个方程检验的F值从474.661上升为660.326,表明该点对因变量预测值的影响是比较大的,值得注意。
[专业结论] 可用二元线性回归方程Y^=16.972158X1-4.465611X2较好地预测因变量Y的的值,回归方程误差均方根为
=2.14515。
[例4.2.2] 有人在某地抽样调查了29例儿童的血红蛋白与4种微量元素的含量,资料如下,试问∶可否用4种微量元素(单位都是μmol/L)钙(X1)、镁(X2)、铁(X3)、铜(X4)来较好地预测血红蛋白(Y,g/L)的含量?
No. Y X1 X2 X3 X4 No. Y X1 X2 X3 X4
1 135.0 13.70 12.68 80.32 0.16 16 102.5 17.48 15.13 73.35 0.19
2 130.0 18.09 17.51 83.65 0.26 17 100.0 15.73 14.41 68.75 0.13
3 137.5 13.43 21.73 76.18 0.19 18 97.5 12.16 12.55 61.38 0.15
4 140.0 16.15 16.10 84.09 0.19 19 95.0 13.04 11.15 58.41 0.13
5 142.5 14.67 15.48 81.72 0.16 20 92.5 13.03 14.87 69.55 0.16
6 127.5 10.90 10.76 70.84 0.09 21 90.0 12.40 10.45 59.27 0.14
7 125.0 13.70 12.68 80.32 0.16 22 87.5 15.22 12.03 46.35 0.19
8 122.5 21.49 18.00 78.78 0.28 23 85.0 13.39 11.83 52.41 0.21
9 120.0 15.06 15.70 70.60 0.18 24 82.5 12.53 11.99 52.38 0.16
10 117.5 13.48 14.07 72.60 0.20 25 80.0 16.30 12.33 55.99 0.16
11 115.0 15.28 15.35 79.83 0.22 26 78.0 14.07 12.04 50.66 0.21
12 112.5 15.01 13.84 68.59 0.14 27 75.0 16.50 13.12 61.61 0.11
13 110.0 17.39 16.44 74.59 0.21 28 72.5 18.44 13.54 55.94 0.18
14 107.5 18.03 16.49 77.11 0.19 29 70.0 11.80 11.73 52.75 0.13
15 105.0 13.75 13.57 79.80 0.14
[分析与解答] 为回答所提的问题,选用多元线性回归分析较合适。
先将数据按29行5列的形式输入,建立数据文件BLOOD.DAT。
[SAS程序]──[D4P15.PRG]
DATAabc2;
a:
blood.dat'
INFILE'
INPUTyx1-x4;
INPUTyx1-x4;
PROCreg;
PROCreg;
MODELy=x1-x4/NOINT
MODELy=x1-x4/COLLIN SELECTION=STEPWISE
COLLINOINT;
SLE=0.30SLS=0.10STB;
RUN;
(程序1) (程序2)
[程序修改指导] 由于自变量不太多,为便于对全部变量都参入计算的结果有一个全面的了解,先用程序1作试探性分析,并用了共线性诊断的技术。
值得注意的是∶用来实现共线性诊断的选择项有①COLLIN、②COLLINOINT两个,①对截距未进行校正,②对截距进行了校正。