分享

偏回归图与偏残差图

 Memo_Cleon 2020-04-28

转自个人微信公众号【Memo_Cleon】的统计学习笔记:偏回归图(Partial Regression Plot)与偏残差图(Partial Residual Plots)

在《线性回归中的线性考察》一文的最后,我们提到了偏回归图与偏残差图是不一样的。本文从构图原理上介绍一下偏回归图(Partial Regression Plot)、偏残差图(Partial Residual Plot)、增强的偏残差图(Argumented Partial Residual Plot)、杠杆图(Leverage Plot)。虽然我极力想避免一些关于统计原理以及数学公式的表述,因为这对我来说是一件非常痛苦的事情,但对这几个图来说,我们要是知道了横坐标是什么,纵坐标是什么,才能更好地理解和应用它们。当然在笔记中,我们还是用示例来展示一下这几个图如何获得及其解读,示例依旧采用《线性回归中的线性考察》中的例子。

【1】偏回归图(Partial Regression Plot)

在SPSS的[线性回归]对话框的打开[Plots…]按钮后有个[Produce all partial plots]选项,生成的散点图就是偏回归图,实际中常被误翻译为“偏残差图”,但偏回归图(Partial Regression Plot)和偏残差图(Partial Residual Plots)是不同的。SPSS的帮助文件对偏回归图的定义是:Partial regression plots are scatterplots of the residuals of the dependent variable and an independent variable when both of these variables are regressed on the rest of the independent variables翻译过来就是自变量Xi的偏回归图因变量Y与其他自变量回归残差自变量Xi与其他自变量回归残差的散点图。偏回归图是用散点图的形式显示两个残差间的关系,其中一个残差是Y残差(因变量Y对自变量X以外的所有预测变量上进行回归获取的残差),另外一个残差是X残差(自变量X对模型中其他所有预测变量上进行回归并计算的残差) 。Y·[i] = residuals from regressing Y (the response variable) against all the independent variables except Xi,Xi·[i] = residuals from regressing Xi against the remaining independent variables.

偏回归图(Partial Regression Plot)也叫增加变量图(Added variable plot)Added variable plot provides information about the marginal importance of a predictor variable Xi, given the other predictor variables already in the model. It shows the marginal importance of the variable in reducing the residual variability.The Y residuals represent the part of Y not explained by all the variables other than X. The X residuals represent the part of X not explained by other variables. The slope of the line fitted to the points in the added variable plot is equal to the regression coefficient when Y is regressed on all variables including X.

以有1个因变量Y与3个预测变量(X1,X2,X3)的多重线性回归模型为例,模型表达式如下:

完整模型为(1),模型(2)产生的εy|X2,X3就是Y残差,模型(3)产生的εX1|X2,X3就是X残差,X1的偏回归图就是以 回归模型(2)的残差εy|X2,X3为纵坐标、回归模型(3)的残差εX1|X2,X3为横坐标构建的散点图,这些散点(εX1|X2,X3,εy|X2,X3的拟合直线模型为(4)。在X1的偏回归图中,两个残差拟合线(4)的截距为0,斜率和残差跟完整模型(1)的X1的系数估计值和残差一致

偏回归图一般用于强影响点和和离群值的探寻。简单说下几种异常点:离群值是Y空间上的异常点,高杠杆点是X空间上的异常点,强影响点是去掉某个点后会使模型参数会明显改变的点。

SPSS操作步骤与结果:

线性回归:Analyze>>Regression>>Linear……

l Dependent(因变量):选入S;

l Independent(自变量):选入wt、hl和ct;

l 变量筛选方法(Method):Enter,默认;

l Plots…对话框:选中Produce all partial plots,Continue。OK。

结果会显示体重(wt)、心脏纵径(hl)以及胸腔横径(ct)的偏回归图。扣除hl、ct的影响后,wt的效应对心脏面积S的影响不大,同理可以查看hl和ct对S的影响,hl对S的影响比较明显,ct对S的影响则可能不明显。我们可以参照后面介绍的杠杆图对偏回归局添加拟合线和95%CI,会更明显的观测到考察因素对因变量是否有影响。数据可能存在离群值和高杠杆点。你可以想象删除某些点后直线是否会改变以此来估计它的影响效果,如果改变会比较明显则可能是强影响点。

  

  

 

  偏回归图(增加变量图)STATA制作步骤:

统计>>线性模型及相关>>线性回归;

模型:因变量选入S,自变量选入wt,hl,ct。

以上相应命令为:regress S wt hl ct。

统计>>线性模型及相关>>回归诊断>>添加变量图,主要选项卡中的变量默认为所有变量;相应命令为avplots。如果只是想生成某个变量的添加变量图,可以只选择需要考察的变量。

偏回归图(增加变量图)R命令清单及结果:

library(foreign)   #载入程序包foreign

lr<- read.dta("D:/Temp/lr.dta")   #从STATA文件导入名称为lr的数据框中

lrfit<-lm(S~wt+hl+ct,data=lr)   #新建对象lrfit,赋值为拟合的线性回归

library(car)   #载入包car

library(carData)   #载入包carData

avPlots(lrfit)   #绘制增加变量图

实际上强影响点的考察还可以直接通过残差、距离(Mahalanobis、Cook’s、leveragevalue)以及DfBeta、StandardizedDfBeta等进行考察,我们在《多重线性回归》一文中都有介绍。另外R的car包中的函数influencePlot()可在一幅图中同时显示离群值、高杠杆点和强影响点,接上面的命令清单输入:

influencePlot(lrfit)    #绘制异常点图

This function influencePlot{car} creates a “bubble” plot of Studentized residuals versus hat values, with the areas of the circles representing the observations proportional to the value Cook's distance. Vertical reference lines are drawn at twice and three times the average hat value, horizontal reference lines at -2, 0, and 2 on the Studentized-residual scale. 21、25是离群值,8和9是高杠杆点,21和25也是强影响点。

在JMP中,有一个常出现的图叫效应杠杆图(leverage plot),它实际上是偏回归图的改进版本。与偏回归图的区别是,杠杆图在Y残差中添加了Y均值,在X残差中添加了X均值。这种添加了X均值的Y残差称为Y杠杆率残差,添加了X均值的X残差被称为X杠杆率值。在杠杆图中,还添加了一条水平线(y=Y均值)、Y杠杆率残差与X杠杆率值的拟合线以及拟合线95%的置信区间。在对偏回归图添加95%的置信区间后,曲线之间的置信区域包含水平线[y=Y效应均值]表明在关注的检验水平下,该自变量的效应不显著;置信曲线均跨过水平线[y=Y响应均值],表明拟合线具有非零斜率,拟合线如具有非零斜率,则表示这个变量效应显著,向模型添加该变量可以更好地帮助解释因变量的变异。
JMP操作步骤:

分析>>拟合模型;

Y选入S,选中wt、hl、ct单击[构造模型效应]中的[添加]选入,[特征]为默认的[最小二乘法],[重点]为默认的[效应杠杆率],结果如下,同偏回归图基本一致,只是横纵坐标值加入了均值。

【2】偏残差图(Partial Residual Plots)

也称成分+残差图(Component plus Residual Plots)。Wayne A. Larsen & Susan J. McCleary在1972年的[The Use of Partial Residual Plots in Regression Analysis]一文中给出的偏残差图明确的定义:The ith partial residual vector can be thought of as the dependent variable vector corrected for all independent variables except the ith variableA plot of the ith partial residuals vs values of the ith variable is proposed as a replacement for the usual plot displaying ordinary residuals vs the ith independent variable. This partial residual plot shows the extent and direction of linearity, while displaying deviations from linearity, such as outliers, inhomogeneity of variance, and curvilinear relationships. Some alternative definitions of partial residuals are described.此处的Xi变量偏残差e定义为e=ε+βXi指用除自变量Xi外其他所有自变量校正过的因变量,但与偏回归图中的使用回归对因变量进行校正不同,偏残差而是通过完整模型(1)直接去掉其他自变量的效应获得的,即公式(5)中的注释ε+βXi也可以通过Y-β02X23X3来计算。偏残差图就是偏残差ε+βXi与预测变量Xi构建的散点图Xi,ε+βXi其拟合线模型为方程(5),“这里关键的想法是Y与Xi 之间未进入模型的非线性关系应能体现在最小二乘法的残差中,从而通过描绘并平滑e 与Xi的关系能够揭示y与Xi之间的偏相关关系”。在X1的偏残差图中,拟合线的斜率和残差跟完整模型(1)的X1的系数估计值和残差一致

偏残差图(Xi,ε+βXi)不仅可以像普通残差图(Xi,ε)一样,用于考察:

还可以用于分析:

还有一个图叫增强的偏残差图(Argumented Partial Residual Plot)或者叫增强的成分+残差图(Argumented Component plus Residual Plots),实际上是偏残差图的变化形式,可以更敏感地检测非线性,其完全模型和散点图中均加入了二次项,增强的偏残差图是由(X1ε+κ1X1+κ4X12散点构成的图,该图中的拟合线(7)与其完全模型(6)拥有相同斜率与残差。

SPSS中并未直接给出偏残差图的绘制,但可以根据其定义进行计算。先给出结果如下(左图为偏残差图,并做过编辑,右图为增强的偏残差图):

SPSS构图步骤:

(1)偏残差图

①计算完整模型残差和预测变量系数:Analyze>>Regression>>Linear……

l Dependent(因变量):选入S;

l Independent(自变量):选入wt、hl和ct;

l 变量筛选方法(Method):Enter,默认;

l Save…对话框:选中Unstandardized,Continue。OK。

此步生成未标准化的残差RES_1,同时在系数表中各自变量的系数,如βhl=9.258524;

②生成新变量Yr:Transform>>Compute Variable…

Yr=9.258524*hl+RES_1;

③构建偏残差图:Graphs>>Chart Builder…

Gallery:Scatter/Dot中双击Simple Scatter,将hl拉入X-Axis?,将Yr拉入Y-Axis?框,OK。

双击生成的偏残差图,添加平滑拟合线(loess)及参考线y=9.258524X,并进行美化。

(2)增强的偏残差图

①生成新变量hl2:Transform>>Compute Variable…

hl2=hl*hl;

②计算强化偏残差图的完整模型残差和预测变量系数:Analyze>>Regression>>Linear……

l Dependent(因变量):选入S;

l Independent(自变量):选入wt、hl、ct、hl2;

l 变量筛选方法(Method):Enter,默认;

l Save…对话框:选中Unstandardized,Continue。OK。

此步生成未标准化的残差RES_2,同时在系数表中各自变量的系数,如βhl=-9.222247,βhl2=0.975178;

③生成新变量Yar:Transform>>Compute Variable…

Yar=-9.222247*hl+0.975178*hl2+RES_1;

④构建偏残差图:Graphs>>Chart Builder…

Gallery:Scatter/Dot中双击Simple Scatter,将hl2拉入X-Axis?,将Yar拉入Y-Axis?框,OK。

STATA步骤:

统计>>线性模型及相关>>线性回归;

模型:因变量选入S,自变量选入wt,hl,ct;

统计>>线性模型及相关>>回归诊断>>分量和残差图(或增强的分量和残差图),主要选项卡中的变量默认为所有变量选择hl。分量和残差图只能一个变量一个变量分析,本例以hl为例。

下图左图为偏残差图,右图为增强的偏残差图。

R命令清单:

在R软件中,偏残差图(成分残差图)不仅给出了偏残差图的散点Xi,ε+βXi及其平滑拟合曲线(粉红色),同时给出了Xi与βXi的拟合直线。在偏残差图中,如果直线与拟合曲线接近重合表明自变量Xi与因变量存在很好的线性关系,如果差别较大则表明自变量与因变量之间可能存在非线性关系。R命令清单及结果如下:

library(foreign)   #载入程序包foreign

lr<- read.dta("D:/Temp/lr.dta")   #从STATA文件导入名称为lr的数据框中

lrfit<-lm(S~wt+hl+ct,data=lr)   #新建对象lrfit,赋值为拟合的线性回归

library(car)   #载入包car

library(carData)   #载入包carData

crPlots(lrfit)   #绘制分类残差图

后记:我们按照前面的定义用SPSS绘制的偏残差图与STATA生成的分量残差图是完全一致的。但从R生成的偏残差图的纵坐标来看,其与stata生成的图是有区别的,倒是与增强的偏残差图类似。从在R的解释文件[https://cran./web/packages/olsrr/vignettes/regression_diagnostics.html]看,偏残差图的定义The residual plus component plot indicates whether any non-linearity is present in the relationship between Yand X and can suggest possible transformations for linearizing the data.Steps to construct the plot:

Regress Y on all variables including X and store the residuals (e).

l Multiply e with regression coefficient of X (eX).

Construct scatter plot of eX and X.

笔者按照这个定义,不论是用eβ还是eX作为纵坐标均未能实现R给出的偏残差图,需要进一步探讨,但在应用上,其形式与STATA基本一致,不影响使用。

END

转自个人微信公众号【Memo_Cleon】的统计学习笔记:偏回归图与偏残差图

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多