档案

Posts Tagged ‘回归分析’

如何区分协方差分析与半偏差相关分析的差别?

2011/09/25 留下评论

zshtom007 @ 2011-08-22:

庄主你好,想请教下协方差分析(ANCOVA)和半偏相关分析(semi-partial correlation)的差异,谢谢!

庄主 @ 2011-08-23:

ANCOVA是一种检验多个自变量(分别为定类水平和定距水平)对一个因变量(定距水平)影响的方法、其结果体现为一系列的F-值以及相应的df值、p-值;semi-partial correlation是在扣除了其他(定距水平)自变量的影响之后、一个自变量与一个因变量(均为定距水平)之间的相关系数(即一个统计量)。因此,两者不是直接可比的。请进一步说明你的变量或模型,以便我理解你到底想问什么?

zshtom007 @ 2011-09-12:

谢谢庄主回答。我想问的是,ANCOVA的思想是控制掉covariate对因变量的影响后,考察其它自变量对因变量的影响。可以有方差解释百分比的指标。而semi-partial correlation的思想也是控制掉某一自变量对因变量的影响后,求另外一个因变量和自变量的相关系数,也可有与以上方差解释百分比对应的r-square指标。

我是想问着这种控制covariate的思想之间有什么差别?

庄主 @ 2011-09-24:

终于明白你的问题。你问的其实就是ANOVA(Analysis of Variance,方差分析)与回归分析的异同。我曾在几个前贴里提到过,方差分析是心理学、教育学的主打武器,而后者则是社会学、政治学等学科的基本工具,但是两者的数学基础相同、估算结果也一样。

不错,你问的是ANCOVA(Analysis of Covariance,协方差),但它只是方差分析从只含定类水平的自变量到也容许定距水平的自变量(习惯上被叫为covariate或协变量)的扩展而已。经典的回归分析只含定距水平的自变量,但通过将定类变量转换成dummy或哑变量,回归分析也可以同时包含定距和定类的自变量。因此,协方差分析和回归分析所能解决的分析问题及其结构完全一样:检验一组定距或定类的自变量对一个定距水平的因变量的联合和独立影响。

先说多个自变量对一个因变量的联合影响。这种影响在方差(或协方差)分析中是通过分解Sum of Squares(离差总和)的来源而实现的,即将离差总和分解成由自变量造成(组间离差)和由误差造成(组内离差)两部分,前者除以离差总和即为自变量的联合影响(即你说的“方差解释百分比”)。而在回归分析里,自变量的联合影响是直接通过回归模型的R2来反映的,但事实上R2也是通过计算被解释的离差除以总离差而得知的。所以,尽管方差分析与回归分析使用的术语不同,两者检验自变量的联合影响的方法及其结果是完全一样的。

再说各个自变量对一个因变量的独立影响。你肯定知道,如果各个自变量之间没有任何相关关系(如控制实验的数据一般如此),那么它们对因变量的影响一定是独立的;而这些独立影响之和,就是上面讲的联合影响。但是,观测而得的自变量(包括实验中的协变量)之间通常是有相关关系的,所以就产生了在自变量之间存在相关关系的条件下,如何计算各自的独立影响的问题。可以说,这是数据分析中最常见也是最容易令人迷惑的问题之一。其纠结之处在于以如何扣除(即“控制”)其它自变量的干扰影响?方差分析和回归分析两个阵营内,各有好几种看法,区别都在于把哪些离差放进计算公式到分子里、哪些离差放进分母。我无意在此一一叙述,否则只会将大家弄得更加迷惑,而只讨论一下你提到的回归分析中的semipartial correlation(半偏差相关系数)。这是我知道的各种计算独立影响指标中最“干净”或最保守的指标。简单说来,它的平方值描述了因变量的离差中纯粹来自某自变量的部分(即既独立于该自变量与其它自变量的相关关系、也独立于该因变量与其它自变量的相关关系),因此,它的值小于任何其它相似指标(如partial correlation)。

协方差分析一般会报告partial eta squared,它的根号值与回归中partial correlation相等,但与semipartial correlation有所不同。如果你需要知道后者,可以根据协方差分析的结果手工计算,当然更省事的方法是放到回归分析里去计算。

如何区别fixed factors(固定变量)、random factors(随机变量)和covariates(协变量)?

2011/08/05 留下评论

Keykure @ 2011-08-02:

我有一个非常简单的问题就是,在SPSS里输入自变量的时候怎么来区分fixed factors, random factors 和covariates,我经常搞混淆这三者。比如我的问题中X是连续变量,是不是就不能放到fixed factors中去,只能放到covariates中?

庄主 @ 2011-08-06:

你的问题涉及两对概念之区别:一是factors(因子)与covariates(协变量);二是fixed与random。前者易懂、后者较难,经常有人问我。

其实并不简单,涉及到两方面的基本知识:一是心理学实验的术语体系(你好像就是读心理学的?);二是数据的unit of analysis(分析单元)和格式问题。因此,经常有人感到困惑。

一、因子与协变量之区别:

首先,两者都是自变量。区别在于测量水平:前者是名目或定类变量(只含两至数个类别,每个类别中至少要有30个案例),后者是连续或定距变量(可以含成千上百个类别,每个类别中只含一至数个案例)。当你通过这种区别、将每个自变量的测量水平告知SPSS或其它统计软件之后,软件就知道如何计算了。作为普通用户,知道这些就够了。

那么,为何SPSS不直接了当地将有关输入区标为“名目自变量”和“连续自变量”?这应该是历史遗留问题。“因子”和“协变量”是实验研究的基本概念,而实验数据传统上用ANOVA(方差分析,只含名目变量的因子)或ANCOVA(协方差,同时含名目因子和连续变量的协变量)来分析。GLM(general linear model)是ANCOVA的扩展,其中的术语也沿用了实验研究体系。这对于习惯“自变量”、“因变量”、“控制变量”等术语的回归分析用户来说,是个挑战。SPSS中很多统计子程序都有这种历史阴影。

提醒大家一下:上述是在测量层面(operationalization)上讨论“因子”和“协变量”之间的区别,它们在理论(conceptualization)上的含义很不同,不要混淆:因子可以是自变量(如外生因子)、也可以说因变量(如内生因子),两者即可以是名目变量、也可以是连续变量;协变量则被用来指“控制变量”(也是对因变量有影响的自变量、但不是理论上所关心的,所以引入以过滤其影响),可以是连续变量(如年龄)、也可以是名目变量(如性别)。

二、固定变量与随机变量之区别:

如上所述,这里的“变量”可以是因子、也可以是协变量。一个变量到底是固定还是随机的?大部分统计教科书并不详细解释,即使有讨论也较费解。以下让我用“非正式”的语言(即只讲结论不讲理由)说一下其中的关键问题。

在GLM范畴内,所谓“固定”和“随机”变量,表面上是指自变量,其实是涉及数据结构。什么意思?一、你的因变量有几个?二、你的自变量之间是“同级并列”(如个人特征)还是“上下主从”(如个人特征在下、机构或社区特征在上)?这两个维度相交,形成了下表中的四种情况。

 

自变量之间关系

因变量个数

同级并列

上下主从

  单个

I. 固定

II. 随机

  多个

III. 随机

IV. 随机

I. 单个因变量和并列自变量:这是最常见(但也是最有局限)的数据,自变量必定是固定的。

II. 单个因变量和主从自变量:由于自变量之间有从属关系,所以形成了multilevel(多层)结构。为了与III和IV相区别,我将这种多层结构叫做“variances between-subjects”(BS差异或人际差异)。下层的自变量为随机而上层的自变量为固定。如果有3+层的话,最高一层为固定、以下各层均为随机。

III. 多个因变量和并列自变量:这时,虽然自变量之间是并列的,但因变量之间存在着明显(如同一概念时间先后的测量)或隐含(同一大概念下面的众多子概念)的关系,所以形成了与BS差异不同的另一种多层结构,我称之为variances within-subjects(WS差异或自身差异)。这种结构中,多个因变量的序号构成了下层自变量的值;而其上层自变量并不存在,需要在GLM或类似程序中构建相应的虚拟变量(我知道,这句话对没有实际操作经验者来说是很难懂的,如不理解就暂且跳过吧)。但是,WS差异结构与BS差异结构相同的是,最高层的自变量总是固定的,而以下各层的自变量均是随机的。

IV. 多个因变量和主从自变量:这种结构同时兼有BS差异和WS差异(即BS-WS差异),其最上层的BS自变量和WS自变量都是固定的而以下各层各种变量都是随机的。这当然是最丰富、也是最难得的数据,如固定样本数据的SEM模型。

希望上述分类有助于大家理解或判断固定和随机变量的表面区别。需要注意的是,随机变量可以当作固定变量处理(当然有犯Type-I错误,即可能过高估计自变量的影响。实际研究上,很多II类数据被当作I类处理)。但是反之不亦然,固定变量不可能成为随机变量。

如何处理严重的缺省值问题?

2010/10/13 留下评论

L @ 2010-10-11:

您在博客中讲解如何报告回归分析时,提到:“但变量常有缺省值,这时模型的个案数就会小于样本数、有时两者相差很大(当然是个严重问题),所以一定要报告前者。”

我在处理一批调查数据,遇到了严重的缺省值问题。我的样本有近千人,用媒体使用的三个自变量和三个人口控制变量(简称X1-X6)对因变量(简称Y)做回归分析,只剩下300个案。请问对此如何处理。

庄主 @ 2010-10-13:

数据缺省值是定量研究者人人遇到都头痛的问题。因为缺省值就是数据里没有信息,巧妇难为无米之炊。

我看了你的数据,主要问题在于X1-X3等3个变量上的缺省值太多(各有200-400个缺省值不等)。如果去掉这三者,会有600余人个人留下来,大概可以接受。但是,这三个自变量是你研究的核心变量,如果删掉它们而只留下3个人口控制变量,也就难以成为传播学研究了。真是一个两难问题。

现在流行一种“Missing Value Analysis“(MVA,即“缺省值分析”),SPSS下属的结构方程模型软件AMOS中就有MVA工具。其基本思想是根据已知信息去预测(即填补)缺损信息。具体操作步骤如下:

1. 假定样本数据中有十个变量(已经用于回归分析的X1-X6和Y,以及没有用上的Z1-Z3),先把Y放一边,分别分析其中八个变量与第就个变量之间的关系。即:

X1 = b0 + b1X2 + b2X3 + b3X4 + b4X5 +b5X6 + b6Z1 + b7Z2 + b8Z3             (1)

X2 = b0 + b1X1 + b2X3 + b3X4 + b4X5 +b5X6 + b6Z1 + b7Z2 + b8Z3             (2)

X3 = b0 + b1X1 + b2X2 + b3X4 + b4X5 +b5X6 + b6Z1 + b7Z2 + b8Z3             (3)

注意,这里每个模型的有效样本数为该模型所有九个变量(包括因变量Y和八个自变量)上都没有非缺省值的个案数。在你的案例中大概是600多人。

2. 根据模型1-3的结果参数(即b0-b8)来分别预测X1-X3上的缺省值。假定模型1的结果是:

X1’ = 0.5 + 1.0X2 + 1.5X3 + 2.0X4 + 2.5X5 +3.0X6 – 2.0Z1 + 3.0Z2 + 1.0Z3    (4)

那么,就可以根据那些在X1上有缺省值的个案的X2-X6和Z1-Z3的实际数值而预测出(填补进)他们在X1上可能取的值(记为X1’)。同理,可以预测出X2或X3缺省值的可能取值(分别记为X2’和X3’)。

3. 最后将填补后的X1-X3(即X1’, X2’, X3’)放回你一开始想做的回归模型,即

Y = b0 + b1X1’ + b2X2’ + b3X3’ + b4Z1 + b5Z2 + b6Z3                                  (5)

MVA是否合理和有效,取决于以下三个条件能否同时被满足:

一、每个模型中的所有就个变量上上没有(或是很少)缺省值,否则“救”不回多少个案。假如每个变量有30个缺省值(即只占样本的3%),看来微不足道,但是如果每个变量上的30个缺省值发生在不一样的个案上,那么就有30X9=270个案无法就回。

二、每个模型有一定的解释力(如R平方在0.20以上,当然越高越好),这决定了用该模型中八个自变量去预测Y的validity(效度)。

三、每个变量上的缺省值是完全随机(completely random)产生的,即不受任何规律制约;不然,必须将影响缺省值产生的因素放进模型中去。

以上条件一和二是可以从已有数据中计算出来的。如果一和二无法成立,那么就则是彻彻底底的无米之炊了。如果条件一和二问题不大,那就需要看条件三了。

条件三一般是无从得道的。不过根据前人研究(包括我自己做过的一个大型研究),缺省值的发生一般都不是完全随机的。也就说,使用MVA在大部分情况下都是有风险的。缺省值产生的随机性越低、用MVA的风险就越高。

以上是现有文献中对MVA的基本看法。此外,我个人觉得用数据中除了因变量之外的所有变量来预测缺省值的做法有totalogy(自我循环)之弊端。以本案为例,你比较一下模型4与模型5,就不难看出Z1-Z3对Y的影响出现了四次:一次是自己的直接影响(模型5)而另三次是分别通过X1’、X2’和X3’的间接影响。这在理论上和方法上都有问题(如X1’-X3’与它们的预测值Z1-Z3之间有共线性)。

我认为,解决上述问题的一个办法是将Z1-Z3从模型1-3中去掉。就是说,只用模型5之外的变量来预测X1-X3的缺省值。如此填补出来的X1’-X3’在模型5中与Z1-Z3应该没有过高的共线性;同时,Z1-Z3对Y的影响只被估计一次。当然,这种方法并无法解决X1-X3中缺省值非随机产生的问题。

最后还是那句话,缺省值就是数据中缺乏信息。MAV或其它任何统计方法(包括我提出的改进方法)都无法根本解决信息不足甚至信息匮乏的问题。

为何一个自变量在总样本和分样本中的显著性不同?

2010/06/05 留下评论

>

Anonymous @ 2010-06-02:

老师:您好。我在做回归分析的时候遇到一个问题,想向您请教。假设我用一些自变量解释因变量y

y=a0+a1x1+a2x2+…+anxn     (模型1)

最后得到的结果是x1(如非农收入比重),x2(如政府补助)与y1显著相关(p<0.01)。我的指导老师希望我对样本进行分组,分为参与非农产业与未参与非常产业,然后对两个子样本分别进行回归分析。他想考察参与非农产业与不参与非农产业的情况下,x2对y的解释力是否有差异。得到两个模型:

参与非农产业的样本(样本2):y*=a0*+a2*x2*+…+an*xn* (模型2)

不参与的样本(样本3):y‘=a0’+a2‘x2’+…+an‘xn’ (模型3)

结果模型2里,x2与y之间显著相关,模型3里二者并不相关。我的指导老师就说这是因为,x2与y之间之所以显著,就是因为在样本2里二者有显著相关关系。对于不参与非农产业的样本,x2与y之间并无关系。因为我对统计知识一无所知,所以上来向老师求助。我的指导老师的说法对吗?出现这种结果还可能是什么原因?或者怎样理解这种现象?

期待您的回复,谢谢

庄主 @ 2010-06-05:

虽然你描述了很详细,但我还不敢肯定完全清楚你的数据(如Y是什么?)和以及你指导老师的意思(他的话“X2与Y之间之所以显著是因为两者有显著相关关系”好像是同义词重复?)。

我猜,你的核心问题是为什么X2在总样本和分样本1中对Y有显著影响,但在分样本2中没有显著影响?假定你是根据X1而将总样本一分为二的(因为X1没有出现在模型2或3中),那么X2只在分样本1中显著的原因有二:

一、X1与X2对Y有交互影响(interaction)。简单说来,X2对Y的影响不是一个常数,而是随着X1的值而变化,如当X1 > 0 (是吗?)时,X2对Y有显著影响;而当X1 = 0(是吗?),X2对Y并无显著影响。至于为什么会这样,则是需要用你们的专业知识来解释了。

二、由两个分样本的大小不同而造成。我们知道,相关系数或回归系数的显著性与样本大小直接有关。如果两个样本的大小不同,即使两者的相关系数或回归系数相同,其中大样本的系数可能显著而小样本的系数则可能不显著。这是一种方法上的artifact(即人为假象)。你需要检查一下两个分样本的大小是否相同。

事实上,如我在前贴(如“分样本比总样本的回归分析更准确吗?”)中指出,检查X1和X2的交互影响,不应该将样本按X1的值分成两个分样本来比较a2,而是应该在总样本(即你的模型1)中加入X1和X2的交互项(即X1和X2的乘积),用你的模型术语来表示,即为 Y = a0 + a1X1 + a2X2 + a3X1X2 + … + anXn。其中a3的显著性直接检验了a2是否随着X1的变化而显著变化,并避免了因为将总样本分成分样本而造成的人为不显著假象。

分类:统计 标签:,

如何比较自变量与中介变量的解释力?

2010/04/21 2 条评论

>

YF @ 2010-04-19:

庄主,非常感谢您对学生的慷慨指导,我想向您请教一个新问题。《管理世界》上有篇文章(见以下出处),是研究中介效应的,其自变量是家长式领导方式,应变量是团队绩效,团队冲突管理方式。作者按照Baron & Kenny(1986)检验中介变量的方法,分析结果用表2表示。

clip_image002

我的问题和该作者文章没有关系,是以该文章为例:(1)如果比较中介变量和自变量对应变量的解释力是否有意义?(2)如果有意义,是否根据下表2结果可以比较中介变量和自变量对应变量的解释力?如果可以根据下表2结果比较,那么看哪两个数据?例如:如果比较仁慈领导和合作型团队冲突解决方式对团队绩效的解释力,是根据0.726**(model 3)〉0.513**(model 2),还是根据0.662**(model 4)〉0.126(model 4),认为仁慈领导对团队绩效的解释力大于合作型团队冲突解决方式对团队绩效的解释力。

文献出处:张新安, 何惠, 顾锋. 家长式领导行为对团队绩效的影响:团队冲突管理方式的中介作用. 管理世界, 2009, 3: 121-133.

庄主 @ 2010-04-21:

问题1:比较中介变量与自变量之间对因变量的解释力之差别,是否有意义?有,但这只是检验中介效应的规定动作之一。强度版的中介效应要求自变量(X)对因变量(Y)的直接影响(Byx)= 0 而其通过中介变量(W)的间接影响(RwxByw) > 0;而弱度版的中介效应则要求Byx < RwxByw。也就是说,Byx < Byw是中介效应的必要条件(因为Rwx小于1.0)。所以两者的差别是不喻而言的。如果Byx大于或等于Byw,那就没有必要再谈中介效应了。

问题2:如果比较Byx与Byw的大小,应该看模型4。你的困惑来源于作者不合适、也无必要用了四步的hierarchical回归(“分批进入回归”,参见我数贴中对在类似场合下使用这种方法的批评),模型2(自变量模型)和模型3(中介变量模型)的系数是不能直接比较的,因为模型2中的Byx是在Byw缺席情况下估算的,其中含有通过Byw的间接影响,所以是夸大了的;同样,模型3中的Byw的影响也因为由于Byx的缺席而被夸大了。只有两者同时出席的模型4才是直接比较的地方。

当然,模型2和模型3也有其用此,就是通过计算模型4的R平方 – 模型2的R平方(= 0.505 – 0.307 = 0.198)来得知两个中介变量(合作型和竞争型)对因变量的联合解释力,并通过计算模型4的R平方 – 模型3的R平方(= 0.505 – 0.478 = 0.027)来得知三个自变量(权威、仁慈、德行)对因变量的联合解释力。而表中模型2和模型3的ΔR平方则是没有什么意义的。由于很多读者对此有困惑,我再重复一下这种“nested testing”(嵌镶式检验)与上述“分批进入回归”的区别:

假定模型为Y = b0 + b1X1 + b2X2 + b3X3,分批进入回归的做法是估计三个模型,分别为Y = b0 + b1X1, Y = b0 + b1 + X2, Y = b0 + b1X1 + b2X2 + b3X3,然后认为:模型1的R平方代表X1对Y的解释力、模型2的R平方与模型1的R平方的差别为X2对Y的解释力、模型3的R平方与模型2的R平方的差别为X3对Y的解释力。其问题是模型1的R平方中包含了X2和X3的贡献、模型2的R平方中包含了X3的贡献。

嵌镶式检验是估计四个模型,分别为1:Y = b0 + b1X1 + b2X2 + b3X3(全模型),2:Y = b0 + b2X2 + b3X3(X1缺席模型),3:Y = b0 + b1X1 + b3X3(X2缺席模型),4:Y = b0 + b1X1 + b2X2(X3缺席模型),然后认为:模型1与2的R平方之差为X1对Y的独立解释力、模型1与3的R平方之差为X2对Y的独立解释力、模型1与3的R平方之差为X3对Y的独立解释力。这里的最后一步与分批进入回归的最后一步相同、但其它比较有数量和质量上的区别。注意,嵌镶式检验的三个R平方差其实就是模型1中X1、X2和X3的semipartial correlation,在SPSS中叫做“part correlation”,可以只估算模型1而得知,不需再分别运行模型2-4的。对初学者来说,分别操作一下有助于从理念上认识上面讨论的各种问题的逻辑。

如何处理自变量之间的相关关系?

2010/03/20 留下评论

>

JF @ 2010-03-15:

我有一个初级问题想了很久还是不清楚。假如我有一个因变量Y、两个自变量X和Z,如果做回归分析,只要将X和Z同时进入回归模型就可以了,不需理会X和Z的相关关系。但是如果用SEM,除了要分别连接X和Z对Y的路径,还要连接X和Z之间的相关关系。这是为什么呢?不是说在结构层面回归和SEM是一致的吗?

另外,在报告上述SEM结果时,是否需要描述和解释X和Z的相关关系?如果用回归分析,是否还需要另行计算X和Z的相关关系、然后再报告呢?

庄主 @ 2010-03-20:

你的问题确实简单、但绝非初级,因为其中涉及了回归分析与结构方程模型(SEM)的主要异同,值得讨论一下。首先,自变量与因变量之间的结构关系 (structural relationship among variables),如自变量对因变量的直接影响、间接影响、总影响、交互影响、等等,在回归和SEM中都是同义的(但不一定是等值的,因为前者含有测量误差而后者不含测量误差,但这与本文无关,所以下面的讨论均假定所有变量都不含测量误差)。

但是,在处理自变量之间的相关关系时,两者所用的方法不同:回归是用隐含方法而SEM是用明示方法。在回归模型 Y = b0 + b1X + b2Z中,对回归系数b1和b2的估算公式分别包含了X与Z的相关系数(记为rXZ;同理,Y与X、Y与Z的相关系数分别记为rYX和rYZ):

image

image

由于b1和b2是在Y与X或Z的简单相关系数中扣除了X与Z的相关程度(以及Y与另一自变量的相关程度),所以b1和b2又被叫做partial regression coefficients(偏回归系数)。可见,在回归分析中,自变量之间的相关关系是自动而且必须地被控制了的。这里的“被控制”是指用于消除自变量之间的相关关系的影响。

在SEM中,自变量之间的相关关系是需要明确设置的。如在使用矩阵语言的LISREL中,通过指令"FR PH (1, 2)”来估算rXZ;而在使用图形语言的AMOS中,则是通过在X和Z之间画一条双箭头的曲线来估算rXZ(见下图,注:图中的三个参数b1、b2和rXZ是不需要的,这里只是为了说明它们与上述回归模型的对应关系)。

image

该SEM模型与上述回归模型是等价等值的。大家可以用一个含三个变量、N > 200 (SEM所需的最小样本量)的数据验证一下,两个模型的b1、b2、rXZ、R-Square(= AMOS中的MSC)、Std error of the estimate(= SEM中e的Variance的平方根)应该都相等。然而,回归用的是OLS(最小二乘法)而SEM是用ML(最大似然法)来估算上述参数的。这两者之间的差别,除了对样本量的要求不同(ML估算只有在大样本条件下才可能接近OLS结果),还有许多深层的差别。这里只讲其中比较明显的一个差别:如上所示,rXZ在回归中是自动被控制起来的,但在SEM中却需要人为设置。反过来说,如果需要的话,在SEM里也可以设置rXZ = 0(在AMOS中也可以将X和Z之间的曲线删掉)或其它任意值(1.0,0.5,等等)。如此设置的模型,因为少估算了一个参数,所以会比原模型多出一个df(自由度),通过比较两个模型的拟合指数(Chi-squares)之差,就可以检验 rXZ = 0(自变量之间为正交)或rXZ = 1 (自变量之间没有discriminant validity)等假设。这些都是无法在回归分析中实现的。

回归模型与SEM模型之间更核心的区别在于前者是在变量层面检验自变量对因变量的解释程度、而后者则是在观察值的方差-协方差矩阵层面检验理论模型与实际数据之间的拟合程度。打个不完全恰当的比分,回归是西药,针对特定病症有强效,但不顾其它后果;而后者是中药,旨在整体和治本,但有时对特定病症并无速效。这种根本区别在本文讨论的自变量相关关系上也有一定影响,但这是一个大题目,需要很多基本概念和铺垫,否则难以讲清,所以不予展开,只是提醒大家,SEM的水很深,下水前要做足热身运动,而回归则是最好的热身运动。就如现在的中医学院都是先教西医原理、再进入中医的。

回到你最后那个问题:如何报告rXZ?一般说来,自变量之间的相关关系(如rXZ)是一种unanalyzed relationship(不作分析的关系)。这里的所谓“不作分析”指的不是统计分析、而是理论分析。如上所说,rXZ在回归中是不直接计算的,但在SEM和用回归做路径分析中均需要统计分析的。但是,除非有特定研究目的(如上述检验自变量之间的discriminant validity)之外,大多数理论并不规定自变量之间关系的强度、方向(谁影响谁)、性质(正或负相关)等,所以实际研究中往往只是简单地估算它们之间的相关关系而不进一步深究其关系的性质、方向、性质等。在写报告时,如果用图形表示实证模型的话,可以在图上标出相关系数的估计值;如无图形,可在附录或注释中用文字或表格报告一下;但在正文中则一般不必提及。

分类:统计, 论文写作 标签:,

如何识别回归分析中的压抑效应?

2010/02/07 留下评论

>

DHF @ 2010-01-25:

祝老师,您好,我是心理学专业学生,想向您请教一下,如何identify a variable as a suppressor variable in regression analysis? 我的数据中出现了类似于classical suppression的效应,但不清楚IV的regression weight提高多少才可以认为是suppression effect. 多谢!虎年顺利!

庄主 @ 2010-02-06:

Suppression effects(压抑效应)是回归分析中的一个重要而又复杂但却不常见的概念。你提到classical suppression(经典压抑),自然也知道此外还有net suppression(净压抑)和cooperative suppression(合作压抑)。相比之间,经典压抑最罕见(以下会谈到),但最容易确认。我用模拟方法做过经典压抑数据,但在实际研究中从来没有遇到过这种数据。你好像中了彩票,值得庆贺。如不怕泄露学术机密,不妨描述一下你的数据以及你认为可能的原因。我相信很多读者都会有兴趣了解。

考虑到大多数读者可能对压抑效应知之甚少,我先讲一些基本概念(估计你已经知道其中的大部分)。

为了便于叙述,我们只讨论含有两个自变量的回归模型,即 Y = B1X1 + B2X2。其中,B1和B2是标准化回归系数,所以没有常数项),另外记X1与Y的相关系数为ry1、X2与Y的相关系数为ry2、X1与X2的相关系数为r12。 习惯上一般将X1看做主要的自变量而将X2看做是压抑变量。当然,X1和X2是对称的,完全可以将X1看做压抑变量的。

统计文献中有过不少压抑效应的定义,其基本思想基本一致,但具体公式上有所不同(所以结果也略有不同,但我不准备涉及那些技术细节)。就基本思想而言,压抑效应是根据ry2 与 B2之间(或者ry1 与 B1之间)的差别来确定的。具体说来,ry2 可以取正值、负值和零值三种可能性,B2则有正值和负值两中可能(但B2不能为零,详见下文)。这样我们就要3 X 2 = 6种情况,分别属于经典压抑、净压抑和合作压抑:

  1. ry2 = 0而B2 > 0,叫做 positive classical suppression(正向经典压抑);
  2. ry2 = 0而B2 < 0,叫做 negative classical suppression(反向经典压抑);
  3. ry2 > 0而B2 > ry2 ,叫做 positive cooperative suppression(正向合作压抑);
  4. ry2 < 0而B2 < ry2 ,叫做 negative cooperative suppression(反向合作压抑);
  5. ry2 < 0而B2 > -ry2,叫做 positive net suppression(正向净压抑);
  6. ry2 > 0而B2 < -ry2,叫做 negative net suppression(反向净压抑)。

上述六种情况,都包含|B2|>|ry2|的条件,即一个自变量的回归系数之绝对值必须大于其与因变量的相关系数之绝对值。这是压抑效应的必要和充分条件。这里的“大于”、“等于”、“小于”、“差别”等,都是在统计显著性检验的含义上说的。如,在一个样本中,ry2的值可以不是0、而是一个与0没有显著差别的数值(当然是一个很小的数);而B2绝对值与ry2绝对值之间的差别一定要达到统计显著水平(至少为p < 0.05)。当然,如何进行这种统计检验则不是一个容易的事,因为检验H0:|B2|=|ry2|的零假设,需要有B2和ry2的联合标准误差SEB2,ry2,而无论相关分析和回归分析都无法计算SEB2,ry2

所幸的是这种困难对于经典压抑并不存在,因为根据定义,经典压抑的前提是ry2 = 0,所以检验经典压抑只须证明当ry2 = 0时,|B2| > 0(即上述情况1和2)。这大概就是你想知道的答案了。这么简单?是的。至今为止我看到的所有文献 都是这个意思。当然,|B2| > 0 仅仅表明B2有统计意义上的显著压抑效应,至于这种压抑效应是否具有实际或理论意义,则取决于B2的大小。这时,我们可以按判断回归系数大小的传统标准(如0.1为弱、0.3为中、0.5为强)来解读B2的压抑效应。

虽然我们无法对净压抑和合作压抑的零假设做正式的统计检验,但我们也可以援引上述rule of thumbs(惯例)来解释|B2|-|ry2|的大小。(我在写这个帖子时,突然想到,也许这个问题可以在SEM中通过equality constraint的方法来解决。我一下子没想好,如有进展,会在这里报告。)

最后再补充一下:所谓“压抑效应”,是指上述回归模型因为引入了X2而将X1的方差中与Y无关之部分压抑过滤掉了,从而改进提高了该回归模型对Y的解释力。(The inclusion of X2 in the regression model suppresses or removes the part of variance in X1 that is unrelated to Y, which results in enhancement of the explanatory power of Y by the model.) 早年(也许是由于计算能力的局限),很多研究建立在相关分析基础之上,所以很有必要关注压抑效应的可能性。现在,多元回归分析是很多研究的起点。既然回归模型中已经同时考虑了X1和X2对Y的影响,那么X2的压抑效应已经被过滤了(当然也许还有X3、X4等等的压抑效应没有被过滤掉)。再加上压抑效应的数据不常见,所以现在很少人会检验压抑效应。但是,如果数据中真有压抑变量,其成因是很有价值的问题,弃之不顾太可惜了。同时,压抑效应的知识还可以帮助我们在研究设计阶段(即收集数据之前)将表面上与Y无关但与X1有关的X2包括在问卷或其它数据采集工具中。

如何比较一个自变量对三个因变量的影响大小?

2010/01/24 留下评论

>

ZYS @ 2010-01-23:

Dear Dr. Zhu,

I read your blog post on how to test the differences of two correlation coefficients posted on http://zjz06.spaces.live.com/blog/cns!3F49BBFB6C5A1D86!954.entry. Is it appropriate to use your method for two regression models based on one sample population?

My question is whether there is a appropriate way to test significant difference between regression coefficients of two different models from same sample population? For example in the below table, how would we statistically compare the difference between betas for political interest as predictors of DV in three conditions? This is a repeated measure experiment. the same group participants participated in three conditions in three months. In other words, the research question is whether the impact of political interest on opinion expression is moderated by condition… The reviewer wants a statistical test –but i didn’t find a good way to test since they are not independent samples…

 
Opinion expression in Condition 1
Opinion expression in Condition 2
Opinion expression in Condition 3
 

ß

ß

ß

Education

.13*

-.07

-.06

Male

.10*

-.01

.05

Age

-.04

.28***

.31***

White

.04

.03

-.03

Political Interest

.33***

.10*

.08

R-square

.04

.09

.11

F

3.60**

7.48***

9.61***

Is there a better way this problem could be tackled?

庄主 @ 2010-01-24:

Your research question differs from the one in that post, where the issue is to compare the correlation coefficients between two independent variables (IVs) with the same dependent variable (DV) whereas your task is to compare the correlations between the same IV with three different DVs.

One approach you can consider is repeated measures regression in general linear modeling (GLM), in which you form a within-subjects (WS) factor to account for the three DVs, and then regress the WS factor on your IV and control variables.  To test the significance of the differences among the relevant regression coefficients, you use the procedure described in 如何检验两个回归系数的差别?.

Another approach, which I think simpler and easier to be understood, is to test a path model with  equality constraints in SEM (see the diagram below). Aside from your regular hypotheses, you fit a series of nested models to test the null hypothesis that β1 = β2 = β3. For example, you compare the fully unconstrained model in which β1, β2, and β3 are free to be estimated and the fully constrained model in which β1, β2, and β3 are fixed to be the same.  The difference in the resulting Chi-squares between the two models, tested with Chi-square distribution with 2 degrees of freedom, tests the above null hypothesis.  In addition, you can test the fully constrained model with three partially constrained models, each with a pairwise constraint such as β1 = β2, β1 = B3, or β2 = β3, to entertain the possibility that not all three coefficients are exactly the same but some pair(s) of them may be. 

image

With the data in the table you provided, I guess that Condition 1 would be significantly different from Conditions 2 and 3 whereas the latter two might not. 

Good luck with your publication.  If it’s published, please come here to share your experience in getting published in journals.  Many readers of this blog would be very interested in learning from your experience.

分类:统计 标签:, ,

如何解读回归与ANOVA的不同结果?

2010/01/24 留下评论

>

Anonymous @ 2010-01-22:

祝老师好!我是心理专业的学生,想请教一个具体的问题。对一个三类别变量作ANOVA结果显示类别1显著小于类别2和类别3,但将这三类转换为dummy variable,类别1为00,类别2为01,类别3为10,用同样的因变量来做回归时,结果是第一个dummy variable没有显著差异,而第二个dummy variable有显著差异,这是不是意味着类别2显著区别于类别1和类别3呢?如果是,为什么会出现这种结果呢?可能需要加上的是我在做回归时还引入了一些其它的变量,其中有一个会与类别变量有相关。

庄主 @ 2010-01-24:

将一个含3个类别的名目变量转换成两个dummy variables(分别记为D1和D2)后做回归分析,D1反映的是类别1和类别2的差别、D2反映的是类别1和类别3的差别。那么为什么类别1和类别2的差别在ANOVA中显著而在回归中不显示?因为你在回归中加入了其它自变量而成为多元分析而ANOVA是只有一个自变量的单元分析。其实,你可以将那些新加的自变量作为协方差 (covariates) 放入ANOVA的,这时就成了ANCOVA (Analysis of Covariates),其结果应该与你做的回归分析完全一样。

你再问:D2为显著,是否说明了类别2显著区别于类别1和类别3呢?没有。D2只说明类别1和类别3的差别,与类别2无关。D1检验类别1与类别2的差别。如果希望知道类别2与类别3的差别,将类别2设为基准组(即类别2取00值,而类别1为10值),那么D2就是反映类别2与3的差别了。

分类:统计 标签:,

为何回归方程的常数是负值?

2009/12/12 留下评论

>

L君 @ 2009-11-18:

老师,您好,我在做毕业论文。问题简化后说就是:有两个不同组别的多元线性回归方程进行比较

y1=a1+b1X1+c1X2+d1X3

y2=a2+b2X1+c2X2+d2X3

1,2为两个不同的大区域(每个大区域都有40个小区域作为观测值);y为污染总量,X1, X2, X3为三种类型的污染源面积(工厂,工地,居民区),b, c, d为三种污染源的单位面积污染量(在模型里都为正数)。现在需要比较1,2两地的污染状况,三种类型污染源的污染贡献量等。我得到的两个回归方程,b、c、d都为正数,但是常数项a1为正,a2为负。这样对单位污染量的比较有影响吗?可以这么分析吗?在这个分析中,可不可以给出非标准回归系数的回归方程,然后用标准回归系数(常数项为0)解释贡献量?但是单位面积污染量要继续用于后续计算的话,是用标准还是非标准的回归系数呢?

但是,如果 y1=30+2X1+3X2+4X3、y2=-300+20X1+30X2+40X3,在两个区域,2区域的单位面积的效益就明比1大,但是在3类污染源面积相同的情况下,y总值是一样的?这个就不太好解释了。其实就算是都为正,但是相差较大的话,也不能比较区域1,2的单位面积效益大小?怎么解决这个问题呢?

还有,这个模型的R平方,还有sig等检验系数有的不合格。之后我改用偏最小二乘法,用SPSS和SIMCA-P计算结果都和多元线性回归得到的方程一样。那是不是随便用哪个结果都行呢?

庄主 @ 2009-12-06:

你提到了好几个问题,其中第一题:两个样本的所有自变量和因变量(污染值或面积)取值都应该是非负值、或许都是正值(960万平方公里之内哪里还有0污染的净土?),但是两个对应回归方程的常数项a1为正、a2为负。你问:这对样本之间“单位污染量”的比较有影响吗?我这学期教的同学中也有问过:“变量全部为正值、为什么回归方程常数为负值?我觉得后者问题更有普遍意义,所以本贴主要谈这个问题,你的其余问题放在最后简单说一下。

我们知道,常数项b0(你用a来表示,为了与本庄其它帖子一致,这里用b0)反映的是当所有自变量分别取值为0时因变量Y的值。但是,在很多实际研究中,出现负值的b0是一件很奇怪或很尴尬的事。在本例中,如果自变量X1-X3(工厂、工地、居民区)没有污染面积,那么该区域不仅没有任何污染而且还会“负污染”(世上真有比蓝天、绿地、白云更圣洁的境界?),真的很奇怪。其实,这仅仅是有关变量的取值区间及其关系强度之间的特定搭配而造成的错位而已。

我们先从下图中获得一些直观的认识。图中的两条线分别代表一个回归方程,其中A线是向上的(即b1为正),但它在X = 0时Y < 0(即b0为负);相反,B线是向下的(即b1为负),而它在X = 0时Y < 0(即b0也为负)。说明b0的取向与b1没有直接关系。另外,A的数据可以局限在A1-A2范围内,即X和Y全部为正值;也可以局限在A3-A4范围内,即X和Y全部为负值。反之,B的数据可以局限在B1-B2范围内,即X为全为负值而Y全为正值;或者局限在B3-B4范围内,即X全为正值而Y全为负值。当然,如果数据局限在A2-A3或B2-B3范围内,X和Y即可为正也可为负。以上六种情况,穷尽了X和Y的可能取值,但其回归方程的常数b0总是为负,说明b0的取向与X和Y的取值范围也没有直接关系。

image

那么,b0的取向到底受什么影响?其中有什么规律可循?我查了一些教科书,希望找到一个权威的说法来引用一下,可惜还没有查到(也许我查的不够广泛和彻底)。以下是我的推导,尚未得到“权威”认可,仅供大家参考。

我们从简单回归方程出发:

Y = b0 + b1X             (1)

如重新组织公式1即有:

b0 = Y – b1X              (2)

我们知道,如果b1已知(通过回归分析而得知)、就可以将Y和X的任意一对常数(如两者的均值、最大值、最小值、均值之一个标准差之上或之下、等等)分别代入公式2而求出b0。这里,我们分别用Y和X的最小值(记为“Ymin”和"Xmin”)来代入公式2:

b0 = Ymin – b1Xmin   (3)

很显然,Ymin、Xmin和b1可以取任何值而公式3均可成立,这与我们从上图得到的直观理解是一致的。更重要的是,我们可以从公式3推导出b0取负值的条件:如果 b0 < 0, 那么Ymin – b1Xmin < 0, 也即 

b1Xmin > Ymin          (4)

或者,

b1 > Ymin/Xmin        (5)

公式4告诉我们,如果Ymin小于Xmin与b1的乘积,那么该回归方程的常数b0为负值;而公式5则直接显示,如果Ymin与Xmin的比值小于b1,那么b0为负值。(当然,我们将公式4和5中的“>”改成“<”或“=”,则可得到b0为正值或为0的条件,但因为后两者属于“正常”现象,所以不再赘言。)

好了,我希望大家至此明白b0为负实属正常情况,即不代表任何“负相关”、也不反映任何数据问题,而是我一开始说的那样:“有关变量的取值区间及其关系强度之间的特定搭配而造成的错位而已”。所谓“错位”,其实只是“错觉”而言。

当然,这种错觉有时很难向读者交代或解释清楚,尤其是在A1-A2数据的情况下,出现一个负b0总会令人质疑的。有何解决方法?有,很简单,就是对X取中值(centering,详见本庄前贴)。X取中值后,回归方程的斜率b1保持不变,但b0会变,其已经不再是X = 0时Y的值,而是X=均值时Y的值。如果数据是A1-A2段的话,那么X的均值一定是正的,所以b0也一定为正(见下图,其中A1’和A2’分别为A1和A2的取中值)。

image

最后简单回答一下L君的其它问题。

一、虽然你的a1为正、a2为负,但两个方程仍然是直接可比的。a1为正、a2为负的意思是,区域1的“污染起点”(即在没有受到X1-X3的任何影响下)高于区域2(也许因为还有其它污染来源)。当然,如果你对两个样本的X1-X3都取中值后,a1和a2应该全部为正,看起来好像更可比,但它们之间的差别应该与现在的差别完全一样。当然,取中后的a1和a2的解读有所变化,反映的是自变量X1-X3各自为均值(即工厂、工地和居民区平均污染水平)时该区域的污染总量。

二、比较两个方程,应该用非标准化回归系数(b)、而不是非标准化回归系数(Beta),因为b反映了X和Y的关系强度,而Beta则是用以下公式从b转换而来:

Beta = bSDx/SDy         (6)

其中SDx和SDy分别是X和Y的标准差。我们知道,两个样本之间的X或Y的标准差会因为各自样本大小、异常值(如区域1有一个超大的异常值或区域2有一个超小的异常值)等因素而不同,所以即使两个样本的b相等,它们的Beta也很可能不等。所以,比较不同方程之间的Beta是没有意义的。

如果你想比较X1-X3在两个区域的各自独立贡献(net contribution),可以比较每个X与Y的semipartial correlation coefficient之平方(在SPSS回归中叫做PART)。

三、如果你的数据满足了线性回归(OLS)的要求,那么OLS回归的结果是“蓝色的”(best linear unbiased estimate,间称BLUE,即最佳无偏线性估计),所以应该报告OLS回归结果。

分类:统计 标签:

如何分析固定样本数据?

2009/09/12 留下评论

H @ 20009-09-08:

我在分析一个固定样本 (panel sample) 的数据,其中每个人被调查了两次,因变量是定距变量、自变量既有定距也有定类变量。我是第一次做Panel,参考了你在《传播统计学》第15章中“固定样本分析的主要步骤”一节,其中建议当因变量为定距变量、自变量即有定距也有定类变量、数据时点为2时,最简便的是使用回归分析、或者使用协方差分析,其结果应该是完全相同的(第405页)。我尝试了SPSS中GLM模型中的Univariate和Repeated Measures两种方法,以下是我用的指令 (其中Y1和Y2是因变量、X是定距自变量、Z是定类自变量),

UNIANOVA y2 BY z WITH y1 x/Design.

GLM y1 y2 BY z WITH x/WSFACTOR = y 2 Polynomial/WSDESIGN = y/DESIGN.

发现它们的结果并不相同,不知问题出在哪里?

庄主 @ 2009-09-12:

一、你用的UNIANOVA, 正式名字叫做 ANOVA with lagged dependent variable as a covariate(“含有因变量过去值的协方差分析”,简称ANCOVA,也就是我们书上说的协方差分析)。这种方法,与书上公式15-6的OLS regression with lagged department variable as an independent variable(“含有因变量过去值的经典回归分析”),在数学上完全一样,其结果当然也完全一样(参见前文回归与GLM的分析结果真的不同吗?)。

两者相比,协方差分析在操作上有一个好处:可以直接输入定类自变量,而在做回归分析前,则必须先将定类自变量转换成dummy variables (哑变量)。

不管用协方差还是回归分析,最重要的是要明确被检验的零假设是什么?以本例来说,被检验的是以下的零假设:

1. Y1对Y2没有显著影响;

2. X对Y2没有显著影响;

3. Z对Y2没有显著影响。

注意,因为你用的“DESIGN”指令中没有任何自变量,说明你只想检验Y1、X和Z对Y2的main effects(主影响)而不建议三者之间的交互影响,也许这是你的理论问题所需,当然没有问题,而且也简化了这里的讨论。

从这三个假设来看,假设1只是技术性需要(控制Y1与Y2之间的自相关),虽然绝大多数情形下两者会高度相关,但没有什么理论价值,所以不必介意。假设2和3是核心,分别显示在控制了Y1对Y2的影响之后,X和Z各自对Y2有无显著影响(请记住这句话)。

二、你用的GLM,正式名字是Repeated Measures ANCOVA with two dependent variables (“含有因变量前后测量值的协方差分析”,简称RM-ANCOVA)。这种方法与上述的协方差或回归的不同之处在于其将Y1和Y2同时当做因变量,你将其取名为“Y”(注意,这里的Y是只存在于这个协方差分析之中的一个虚拟变量;并注意这个Y与我们书中405页上公式15-5中的因变量ΔY (= Y2 – Y1) 不是一回事,而是与multilevel(多层分析)第一层分析的思路是一致的)。

我们也来看看这里检验的是哪些零假设:

1. Y1与Y2之间没有显著差别 (即一种Test of Within-subjects Effects);

2. Y1与Y2之间的差别与X没有显著关系(即Y和X对从Y1到Y2变化的交互影响,也是一种Test of Within-subjects Effects);

3. Y1与Y2之间的差别与Z没有显著关系(即Y和Z对从Y1到Y2变化的交互影响,也是一种Test of Within-subjects Effects);

4. X对Y(即Y1和Y2的均值)没有显著影响(这是一种Test of Between-subjects Effects);

5. Z对Y(即Y1和Y2的均值)没有显著影响(也是一种Test of Between-subjects Effects)。

上述零假设中,1与ANCOVA或回归分析的1相仿,检验自相关而已;4和5的意义不大(因为求Y1和Y2的均值没什么理论意义);假设2和3也是核心,分别检验了X或Z对从Y1到Y2的变化的影响,与ANCOVA的假设2和3分别检验Y2有所不同:前者是一种Within-subjects Effects (前后变化),而后者是一种Between-subjects Effects(横向比较)。当然,由于两个模型鉴于同样的数据,所以如果X或Z对Y的前后变化没有显著影响时,其对Y2也不会有显著影响。反之亦然。

两者之间,究竟选用那种模型或报告那种结果,取决于你的研究问题。我个人觉得RM-ANCOVA提供的信息更丰富或更接近一般研究问题,但是其结果的解读更复杂,所以需要有对GLM模型比较深入的理解,否则还是以回归分析或ANCOVA为准。

如何解读一个交互影响显著而简单斜率不显著的回归模型?

2009/08/29 留下评论

Anonymous @ 2009-07-30:

Hi, Dr ZHU, I may want introduce myself first, I am a Phd Candidate from your university majoring in xxx (EDITED BY 庄主). I find your forum by accident and I have read some reviews on it, I really feel it is a good place to know more statistics knowledge.

I want to ask one question about the interaction effects of two independent variables (or we may also can say the moderating effect of one independent variable and one moderator, I may name them "A" and "B") on one dependent variable (I may name it "C"). I first use the traditional method, OLS- multiple linear regression in SPSS to run the produced term A*B’s effect on C, I got a significant result, the T value is around 2.2 thus the P<0.05.

Then I further explore the internal mechanism of the interaction effect by using Cohen and Cohen (1983), Aiken and West (1991) and Dawson and Richter’s (2006) Simple Slopes Test [this method is designed for interpretation of the interaction effects of two continuous predictor variables, by this way one could interpret the significance level of the causal relationships between independent variable and dependent variable under high or low level of the moderator. To illustrate and test the significant interaction effects, separate regression lines were computed, plotted, and tested with one standard deviation below the mean on the moderating variables as well as one standard deviation above the mean of them.], this time I find the causal relationship between A and C is insignificant both under high B and low B level, in fact the coefficients take the opposite direction. Under high B level the coefficient between A and C is negative but insignificant, under low B level the coefficient between A and C is positive but insignificant.

I originally explain the significant moderating effect is: although under both high and low B level the causal relationship between A and C is insignificant, but because of the opposite coefficient, thus the moderating effect (A*B) may still be significant. But current one famous professor rejected my explanation; he told me that the results were inconsistent: 1. from one side, the moderating effect is insignificant. 2. form the other side, both under high and low B level, the causal relationship between A and C is insignificant thus can be treated as no relationship. How can you say them taking moderating effect first and later told us the effects were equal (A and C have no relationship) under both conditions (high and low B level)? Thus I am a little confused, as you know, in many cases, run the linear regression will meet such question as I described, so commonly how can we explain this phenomenon to cope with the journal reviewers’ critique on this issue?

Many thanks!

庄主 @ 2009-08-29:

Thanks for the detailed explanations of your question.  It’s satisfying to know that someone of my own institution also reads this blog. Sorry for the delayed response as I’ve been traveling in the summer. To benefit other readers who might not be efficient in English, please allow me to reply in Chinese.

先简单回顾一下你的问题。你有模型1

C = b0 + b1A + b2B + b3AB                       (1)

其中A、B和C都是定距变量。你用OLS回归检验,发现b3(还是b1或b2?)的t值 = 2.2 (p < 0.05),即AB对C有显著的交互影响。为了进一步理解这种交互关系的“内在机制”,你采用了Cohen & Cohen等推荐的“简单斜率检验法”(test of simple regression slope),即根据模型1的结果,将B的均值±1个标准差的值(分别记为BH和BL)代人模型1,来算出以下两个简单回归模型的斜率:

C = b0 + b1A + b2BL+ b3ABL = (b0 + b2BL) + (b1+ b3BL)A             (2)

C = b0 + b1A + b2BH+ b3ABH = (b0 + b2BH) + (b1+ b3BH)A           (3)

说明:因为BH和BL均是一个常数(而原来的B是一个变量),所以它们代入模型1后而得到的模型2和3,经过整理以后,都成为只含自变量A的一元(或简单)回归模型,而模型2中的b1+ b3BL和模型3中的b1+ b3BH就是你说的的简单斜率(就是我用蓝色标明的部分)。这时,你发现模型2的简单斜率b1+ b3BL成了负值而模型3的简单斜率b1+ b3BH仍是正值。你进一步对这两个斜率作了显著检验,发现两者均不显著。你的结论是“虽然A在调节变量B的不同条件下对C都没有显著影响,但是A和B的显著交互影响仍然存在”。但是,一位著名教授不同意你的说法,理由是:一、你的交互影响不显著(我不理解这句话,因为它与你说的模型1中的t = 2.2有矛盾);二、A在B的不同条件下对C的影响都不显著。(不知我的上述理解是否有误?)

好了,现在谈谈我的看法。

首先,我有两处不清楚:一、如我已在上面问过,模型1中显著的是b3还是其它系数?二、你还没有提到,模型1中的A、B和AB是否为各自的centered values(“取中值”,以避免或降低AB与A、AB与C之间的相关程度)?鉴于你已读过Cohen & Cohen, Aiken & West等经典文献,应该熟悉检验交互影响的基本步骤,所以我的回答是基于以下假定的:一、你说的模型1中t = 2.2的显著系数是b3;二、模型1中AB与A、AB与C之间并不相关(这点很重要,不然、假定一是没有意义的)。

如果上述两个条件成立,那么你的A和B在样本中对C就是确实具有显著的交互影响。当然,因为你的t值接近临界值(1.96或更大),AB的交互影响应该是marginal(相当勉强)的,所以要审慎对待,至少要检查一下A的数据中是否存在异常值;如有异常值,则需要剔除后再次检验模型1,看看AB的影响是否继续保持显著,已确保该模型的robustness(“鲁棒性”)。

你的主要困惑(也是你教授理由之二)在于:为什么在模型1的b3显著的前提之下,模型2和3的斜率不显著?这里存在一个许多教科书上没有明确解释、但初学者往往容易误解的事实,即AB之间的显著交互关系只是说明自变量(A)对因变量(C)的主影响(main effects)将随着调节变量(B)的取值而变化,但并不保证在B的不同取值上A的所有主影响都是显著的(但至少有一个取值上A的主影响是显著的,否则AB不可能显著)。用英语说,A significant interaction effect ensures not only the main effect of an independent variable on a dependent variable varies across different levels of a moderator variable, but also at least one of the main effects is significantly different from zero. However, the significant interaction doesn’t guarantee all main effects of the independent variable on the dependent variable to differ significantly from zero. 我们很容易用以下的图示来说明这个道理。

image

左图是我随手画的,其中有五条回归线,但都是根据同一模型(如你的模型1)而取B的最大值(Max)、最小值(Min)、均值(Mean)、均值减一个标准差(你的模型2)、均值加一个标准差(你的模型3)而画出的。虽然没有实际数据,但可以大致猜出五条回归线所依据的模型1的b1和b3的取值范围,即b1(即A的总斜率)应该等于0,b3(即AB的交互影响)则明显大于0(因为A对C的影响是放射的、即随着B的增加而增加)。当然,我们并不知道(也无必要知道)b0和b2的取值范围,因为它们与本案毫无关系。

图中B=均值的回归线显然是一条水平线,所以是不显著的(即斜率等于0)。而B=均值加/减标准差的两条线,虽然并非水平线,但也很接近,考虑到各自的抽样误差(注意,不要与标准差相混淆了)而其斜率与0没有显著差别(也许你的数据就是这种情况)。但是,B=极大值/极小值的两条线的斜率显然不等于0。如果我们再添加B=均值+/-2个标准差的两条线,可以想象它们的斜率也会不等于0。结论:当A和B对C有显著影响时,A对C的影响随着在B的取值而变化,有些显著而有些可能不显著。

以上是直观的解释。我们还需要略正规一点地总结一下。回到模型2和3,注意其中的蓝色部分(即各自的斜率)。它们是否=0,是由下述公式来检验的:

image

 

 

image

其中Varb1和Varb2分别是b12的方差、Covb1b3是b12的协方差。我们略过如何计算系数的方差和协方差的技术细节,而来看一下如何使得tL和tH达到显著水平(即大于2)。不言而喻的是分子要大而分母要小。就分子而言,从表面上看b1、b3和BH或BL三者均要越大越好,但更重要的是要三者取同样方向,否则会互相抵消(这不容易做到,尤其是当数据经过中心化处理之后,BL一定是负的,而b1或b3的方向也会因A或B的中心化而与原始数据的方向相反)。而且,调节变量的取值(BL或BH)也不是越大越好,因为同时也会扩大分母。结论:tL和tH的取值受到很多正反因素的影响,很难做到永远显著。但是,这与b1是否显著没有一一对应关系。

最后,你问如何使得期刊的reviewers接受你的解释。是的,有些(如果我用“很多”的话,大家可能会觉得我太狂妄,但是事实上“有些”不是一个小数目)reviewers也会将交互影响等同于主影响,所以你不仅要自己弄得很清楚,而且要说得很明白易懂,这时,公式和图表就是必要的辅助工具了。如何写好交互影响的报告,确是一个挑战。多读几遍Cohen & Cohen吧(他们的第三版就邀Aiken和West加盟合写了)。

分类:统计 标签:,

为何回归系数这么小?

2009/07/18 留下评论

>

Anonymous @ 2009-07-15:

我在做一个简单的多因素回归,96个cases, 13 个自变量。 回归结果显示全部coefficients 小于0.005, 其中部分变量p值显著。为什么会这样?这个结果该如何改善或解释呢?急,多谢!

庄主 @ 2009-07-19:

这个问题的答案较简单。如果你说是非标准化回归系数,则反映出你的自变量取值很大或因变量取值很小;如果你说的是标准化回归系数,则反映出你的样本很大(但实际上你的n = 96)或自变量之间有共线性。这两种情况的本质不同,需要分别简述。

非标准化系数

其定义为 the exact amount of change in the dependent variable as the independent variable goes up by one unit when other independent variables are held constant(恕我不翻,我觉得任何中译都不够原文明了精确)。这里的"exact amount of change”的单位,是由自变量和因变量的测量单位决定。假定你的一个自变量自变量是年龄,而因变量是身高,样本为青少年(12-17岁),如果年龄以年为单位,身高以厘米为单位,非标准化系数 =  10,则说明在这段年龄中,每增加1岁,身高长10公分。但是如果年龄以天为单位,其非标准化系数则 = 0.027(=10/365)。相反,如果年龄以岁为单位,身高以毫米为单位,其系数 = 100 (=10×10),等等。你可以变换两者的各种取值单位,可以得到小到5-6位小数、大到5-6位整数的系数,但其相关程度永远是一样的。希望你能够因此而举一反三,得出如果解释你的结果之方法。

标准化系数

其定义为the exact amount of change in the standardized dependent variable as the independent variable goes up by one standardized unit when other independent variables are held constant(只是多了standardized一词)。这时,无论自变量或因变量取何单位,其系数的值不会变化。如果标准化系数 = 0.005,反映的则是一种很弱的相关关系。为什么还会显著?上面已提到,原因一为样本(巨)大,这时该关系虽然有统计显著意义、但缺乏实际(即理论)意义;原因二是(部分)自变量之间高度相关,导致(部分)系数的标准误差人为变小而达到统计显著,这种结果更有误导之效。你的数据是小样本而多变量,更容易发生第二种情况。一般说来,每个自变量需要有30左右的个案。你有13个自变量,需要400个案。如果只有96个案,则只能用3个左右变量(可以讲高度相关的自变量组成因子来减少自变量个数)。

分类:统计 标签:

如何处理和解读三角关系中的扭曲变量(distorter)?

2009/06/12 留下评论

>

龙猫 @ 2009-06-08:

庄主好,日前在研究中遇到一难题,想请您赐教。自变量ABCD通过中介变量E影响因变量F,但加入自变量G后导致E到F的路径系数由原来的显著正相关变成了负值,不知如何解释和处理?我自己的推断是G变量对F变量的解释力过强,压制了E变量对F变量的影响,但我不确定这样推理对不对。另外,也不知如何处理这类问题。故在此请教庄主,谢谢您。(注:研究的样本量为320,
测题数目为30.)

庄主 @ 2009-06-13:

为了便于其他读者的理解,我根据你的叙述,将你的两个模型分别复原在图1a和图1b中(注:图b中红线部分为我所加)。由于你没有说明G与A-D的关系,我假定G不是从A-D到E的另一个中介变量(如果是,问题会更复杂一些)。也因为如此,你的问题其实只涉及E、F、G的三角关系,与所以我加了一个红框,以下来集中讨论三角关系中可能出现的各种问题。

image

再重复一下你的发现:在没有控制G之前,bFE是正值;而引入G之后,b’FE(注意b的上标中的“’”记号)成了负值。你认为G是一个压抑变量(suppressor),不知如何处理G。

先讲讲三角关系的基本原理:

  1. 一个第三者(G)当且仅当同时满足以下两种条件时,才会改变原有自变量(E)和因变量(F)的关系:一是G与E相关、二是G与F相关。(你的数据看来同时满足了这两条。)
  2. 所谓“改变原有关系”,包括了三种不同的变化:一是改变了significance of the relationship(显著水平,即b值从不显著变显著或反之);二是改变了strength of the relationship(强度,即b值从小变大或反之);三是改变了direction of the relationship(方向,即b值从正变负或反之)。注意:这三种变化不是互斥而是独立的,即三者中的任何组合都可能同时发生。(你只说了你的数据中出现了方向的变化,不知原有关系的显著水平或强度是否也有变化?)
  3. 所有上述三种情况的变化,都说明E和F的原有关系是spurious(虚假)、靠不住,而引入第三者G是必要和合适的。(即你的模型a是错的而模型b是对的,应该接受后者,哪怕后者否定了你原先的假设。其实,对有经验的研究者来说,后者的出现更令人振奋,因为突破也许就在其中!)
  4. 第三者的角色,根据上述不同变化而分为distorter(扭曲变量)和suppressor(压抑变量)两种,当然也可能是两者兼顾(详见下表)。简单说来,扭曲变量的缺失导致了Type I的错误(如不应该显著的成了显著、微弱关系的成了强势关系、正的关系成了负的、负的成了正的,等等);而压抑变量的缺失则导致了Type II的错误(如应该显著的成了不显著、强关系的成了弱关系、等等)。大家知道,Type I后果更严重,所以对扭曲变量的控制更有必要(也正因为如此,发现扭曲变量往往会令人兴奋甚至亢奋。)

表一、压抑变量与扭曲变量之一览表

G as a Suppressor
G as a Distorter
Change in Significance-level
Nonsig->Sig
Y
Sig->Nonsig
Y
Change in Strength
Small->Large
Y
 
Large->Small
Y
Change in Direction
Postive->Negative
Y
Negative->Positive
Y

Source: J. J. H. Zhu (2009), All rights reserved.

回到你的数据,很显然,G是一个扭曲变量,所以一定要引入模型,原先的bFE是错的而b’FE是对的(当然,假定没有其它第三者的缺失)。至于G是否也是一个压抑变量,则要看bFE和b’FE的数值和各自的显著水平才能知道。你不妨补充报告一下,以飨读者。

也许你还会问,为什么G会改变原先关系的方向?我记得曾在以前的帖子中讲过(但一下子搜不到),G与E(即rEG)或G与F(即bFG)的两对关系中,必定(而其只能)有一对是负的(请你验证一下)。这是因为任何一组完整(即此外没有其它显著的第三者)的三角关系之乘积(即rEG X bFE X bFG)必须为一个正值(见图2)。传播学中的cognitive dissonance理论就是据此而来的(以下12字为广告:详见我译的《大众传播模式论》)。

image

如果想更进一步探讨这种三角关系的话,那么可以将G当做是一个交互变量来处理(事实上G与E的交互项往往就是显著的),其结果大多有助于解开这种扭曲现象之谜。我记不得是否曾经说过,一般说来,交互影响比中介影响更有“革命性”意义。That’s why I was excited, rather than depressed, when reading your message.

如何检验一个同时为调节和中介的变量?

2009/05/01 留下评论

>

Anonymous @ 2009-04-22:

祝老师您好: 我想请问两个困扰很久的问题:1.是否可能存在着这样的情形:在变量a对变量b有影响的前提下,变量c对它们之间关系的中介效应和调节效应同时存在?2.在用SEM做全显变量路径分析时,应该怎样看待这些拟合指数,是否和做CFA或结构模型的标准完全一样?

庄主 @ 2009-05-01:

我还没有见到过这种理论或这类数据。我估计,如果有某理论能合理假设出这种情形(你能否举个例子?),test(检验)并不难(见以下讨论),但却很难verify(证明),因为交互关系和中介关系各自都是不容易验证的小概率事件、而两个小概率事件交将是一个特小概率事件(传说中的“黑天鹅”事件?)。

说说如何检验交互关系+中介关系吧。当然需要借助公式和图像来说明。为了与为我其它帖子使用的符号一致,我将你的a、b、c分别改为X(自变量)、Y(因变量)和Z(调节和中介变量),并生成XZ(交互变量)。以下分别是交互关系、中介关系和交互+中介关系的模型:

image

注意:为了简便起见,三个模型都省却了常数项。模型a和模型c中的X、Z、XZ之间都假定为0相关。模型2和模型3中的b1也都假定为0。

模型1和模型2是用来说明模型3的来历,而模型3是需要被检验的模型,具体步骤为:

1、中介关系的检验:估计模型3(包括b1)、然后设b1为0,比较两者的拟合度,如果没有显著差别,则说明b1=0;如果b2和b4同时显著地不等于0,并且b2b4显著地大于b1,则中介关系成立(具体参见如何检验两个中介变量的效应?和其它帖子);

2、交互关系的检验:估计模型3(包括b1)、然后设b3为0,比较两者的拟合度,如果没有显著差别,则说明b3=0、反之,如果有显著差别,则说明b3不等于0、即Z对X与Y的关系有交互作用(具体参见以前发过的好些交互影响帖子)。

如果X、Y、Z都是直接观测变量,那么上述模型只是不含测量模型的路径分析,可以在SEM来做、也可以用经典的OLS回归来做(即分别执行图c标题中的两个公式就是了),其结果完全一样。SEM的拟合度可以用卡方值或R平方、而回顾的拟合度则用R平方。但是,这时的SEM的卡方值与CFA的卡方值之含义完全不同,前者是结构模型中因子之间的关系而后者是测量模型中因子与观测变量之间的关系。

如果X、Y、Z中有带观测变量的隐含因子,问题就复杂了很多,因为现有的SEM模型对交互项(XZ)没有完善的处理方法,一般是采用分组方法,即将样本按Z的不同值分成若干组,分别估计图b,然后通过比较各组b3的差别来验证Z的交换作用。

如何确定综合指数的构成权重?

2009/04/30 11 条评论

>

Anonymous @ 2009-04-29:

祝老师,您好!我现在在写硕士毕业论文,想请教您几个小问题。
我让主管给下属的三种绩效(任务绩效、情境绩效和反生产绩效)做出评分,然后对员工的总体绩效(与前面相独立的量表)做出评分,然后用三种绩效的得分对总体绩效得分进行回归,这样得出三个回归系数。前两个系数显著,后一个不显著。这三种绩效的系数可以视为主管在评价员工总体绩效时更看重哪种绩效,即一种权重。我想考查哪种绩效在总体绩效评分中更受主管重视,我还需要进行两个系数的显著性差异的检验吗?如果要,如何做?

Anonymous @ 2009-04-29(也许是另一读者):

他的意思应该是这样说,已经有若干个观测变量,这些变量为了测量隐含变量(总体满意度)。但由于理论上不同的观测变量对总体变量的影响程度是不一样的,对隐含变量的贡献程度不一样,系数也就不一样,不能通过全体简单的平均得出结果。那么,得通过什么方法来确定每个观测量的权重,再配合每个观测变量的均值来求得最终的隐含变量呢?结构方程中的路径系数是否可以作为这个权重来理解呢?

我也想顺便问一下,相关系数R平方是否也可以作为权重?回归系数呢?有的文章是通过因子分析,用共同度来作为对总体的权重系数,这个处理方法合理吗?

庄主 @ 2009-05-02:

上述两个问题应该是不同的。匿名一(大家提问时能否留个名?当然假名虚名浪名都可以,以便区分)的问题是一组supervised数据,即总体绩效是一个观测到的变量,而匿名二的问题中因为总体绩效是没有观测的隐含因子、所以是一组unsupervised数据。两者之间当然后者更常见,但前者含有更多信息、因此可以研究更多问题。

一、先讨论匿名一的问题。他(她?)的模型应该是(见最后的注释)

Y = b0 + b1y1 + b2y2 + b3y3 + e                        (公式一)

用来检验y1 – y3各自对Y的影响(即其所说的“考查哪种绩效在总体绩效评分中更受主管重视”)。是否需要对b1与b2、b1与b3、b2-b3三对系数之间的差别做显著检验?当然要。如何做?请参见前贴“如何检验两个回归系数的差别?”。

二、匿名二提出的是一个含三个观测变量的测量模型(measurement model),即

y = Λyη + ε                                                       (公式二)

其中y = y1,y2,y3,η是隐含因子、Λy 是η对各y的影响(也即权重),ε是各y中不受η影响的独自变异(也即误差)。显然,公式一与公式二很不一样:总体绩效在公式一中是因变量(等号的左边)而在公式二中是自变量(等号的右边);公式一中的b1 – b3无论在理论上还是在数值上都与公式二中的Λ1 – Λ3是不同的。

三、现在分别讨论匿名二提到的四种确定y之权重的方法:

1、结构方程中的路径系数:英文为path coefficients of the structural model,但本案没有path coefficients、只有factor loadings of the measurement model(测量模型的因子负荷,即公式二的Λ1 – Λ3)。答案是肯定的,因子负荷就是被当做y1 – y3的权重的。

2、相关系数R平方:不清楚你指的是y1 – y3之间的两两相关系数之平方,还是公式二的R平方?前者与匿名一的研究问题无直接关系。后者就是Λ1 – Λ3的平方。

3、回归系数:同样不清楚你指哪个“回归模型”?如是公式一,你没有直接观测的Y,无法估计。如是公式二,就与你的方法1相同。

4、因子分析的共同度(commonality):这里指的应该是exploratory factor analysis,既然现在有理论导向的confirmatory factor analysis(即公式二),就不必再用数据导向的EFA了。

四、有心的读者也许会想到将匿名一的supervsied数据和匿名二的unsupervised数据(两者中的y1 – y3是相同的)合在一起考虑,就是说,先用公式二构建隐含因子η,然后再检验其与观测变量Y之间的相关关系。一般说来,η与Y是正相关的,但其相关程度不一定是很强烈的、甚至不一定是显著的(如果样本小的话)。其背后有两种可能性:一是方法上的问题:虽然η没有测量误差、但Y含有一定的测量误差(但无法估计),二是理论上的问题:η与Y不一定是一个概念(如η也许是一个多维的因子,其中某些维度与Y无关),即confirmatory validaity问题。如果数据中只有Y和y1 – y3四个变量,我们无法将这两种原因分开。如果有其它“第三者”变量(在理论上与Y或测量误差有关),则可以进一步解析下去(重大突破往往就在眼前了)。但是,即使只有这四个变量,据此而发现的η与Y的相关关系,已经提供了很多信息(如对η效度的独立验证)。

最后,讲一讲语言的精确性问题(应该是已讲过多次的老话了)。匿名一说“用三种绩效的得分对总体绩效得分进行回归”,这句话大概是说倒了的,而本意应该是“用总体绩效得分对三种绩效的得分进行回归”(即公式一)。而匿名二的本意才是“用三种绩效的得分对虚拟的总体绩效得分进行回归”(公式二),但他(她)提到的方法3又和公式一混起来了。思想的迷惑往往与语言的含混互为因果。如何避免?用公式和英文。在英文里描述回归模型的句型是

regress Y on X controlling for Z,或者Y is regressed on X with Z controlled

其中Y、X和Z分别指因变量、自变量和控制变量。这使我联想起前几天与一些学生聊天的情景,当时我建议他们学研究方法时不要看中文书,因为中文语言不够严密,不料遭到强烈质疑,要我举例证明。这里是又一例。如果依靠他们的中文描述,很难将匿名一和匿名二之区别弄清楚的。

分类:统计 标签:, ,

分样本比总样本的回归分析更准确吗?

2009/04/11 留下评论

>

罗拉@2009-03-30:

祝老师,1.这个问题是上次“如何检验男女两组回归系数之间的差别?”的延续,性别是调节变量,影响了自变量和因变量关系的方向,生成性别和其他两个变量的交互项进行统计解释率为21%,但是分性别统计时,女生为20%,男生为33%,这时是不是分性别统计更准确呢?

2.自变量为两个分类变量(性别,年级),因变量为二分变量(稳定,不稳定),我现在用RC表统计的,但是如果要考虑性别和年级在因变量上的交互效应该如何做呢?

庄主@2009-04-11:

先叙述一下罗拉的问题1:他/她想检验的模型为

Yi = b0 + b1X1i + b2X2i + b3Zi + b4X1iZi + b5X2iZi (公式1,i = 1 ~ N)

其中Y是因变量、X1和X2是自变量、Z是作为调节变量的性别,用于某一样本(记为N),其回归方程的R平方(记为R21)为0.21。如果将样本N按男女分成两个分样本(N1和N2),分别用以下模型做回归

Yi= b0 + b1X1i + b2X2i (公式2, i = 1 ~ N1)

Yi= b0 + b1X1i + b2X2i (公式3, i = 1 ~ N2)

(注意:性别Z在两个子样本中都是一个常数,即在男性中=1、女性中=0,所以公式2中没有b3Z、b4X1Z和 b5X2Z三项。)其R平方(分别记为R22和R23)分别为0.20和0.33,前者略小于R21、但后者则明显大于R21

(罗拉及其他网友:如果下次你有疑问,能否将问题按类似的详尽程度叙述出来?这次我完全看懂罗拉的问题、但担心有些读者看不懂,所以详细写出来;但有时我也不大或完全看不懂问题。)

罗拉的结论“分性别统计更准确”涉及几个误解。第一,就R2而言,R22和R23合在一起与R21是等值的,这是因为R21是R22和R23加权平均数(weighted mean)。本例中R21非常接近女性组的R23而遥遥远离男性组的R22,这应该是女性人数明显多于男性人数而造成的。

注意:上述公式1和公式2+公式3是等值的;但是如果在公式1中拿掉与Z有关的b3-b5三项,即

Yi = b0 + b1X1i + b2X2i (公式4, i = 1 ~ N)

公式4与公式2+公式3是不等值的。公式1是一个含交互项变量的模型。公式2+公式3是公式1的分拆,所以是一组隐含交互项的模型。而公式4只含主影响,R24会小于R21或R22和R23的加权均值。大家不要将公式1与公式4混淆了。

第二、虽然分样本的R22和R23与总样本的R21等值,但是由于分样本的个案数(N1和N2)小于总样本数,所以总样本的回归结果要比两个分样本的结果更精确(即样本大则误差小)。

第三、虽然对两个分样本的b0、b1或b2作比较很直观,但是这种比较并不能告诉我们两者之间是否存在显著差别,而总样本(即公式1)中的b4和b5分别直接检验了Z与X1及Z与X2的交互影响(详细参见如何检验男女两组回归系数之间的差别?)。

罗拉的问题2,与问题1的唯一区别是因变量是dummy变量,自然不能用经典的OLS回归而应该用Logistic Regression等工具。但是对两个自变量(其实是一个自变量和一个调节变量)之间的交互影响的检验和展示,与问题1以及本庄有关交互影响的三、五个帖子完全一样,恕不赘言。

如何绘制调节效应的图形?

2009/04/11 留下评论

>

无名氏 @ 2009-04-09:

我是一名应届毕业生,人力资源管理专业,目前在做关于调节作用的毕业论文。向您请教一个问题,“如何绘制调节效应的图形”?谢谢您,祝开心!

庄主 @ 2009-04-10:

这个问题,其实就是如何用图形表示交互关系。而最常见的图形则是直线图(line chart,相信你多半见过),其中Y轴是因变量、X是自变量、图中至少有两条线,每条线代表调节变量(moderator variable)的一个组(更精确地说,是X与Y在该组数据中的关系)。这种图很容易画,可能的难点在于如何设定每条线的斜率,解决方法是先解析出每条线所对应的回归方程,余下的步骤就是小菜一碟了。以下举几个例子来说明。

一、调节变量是一个二分的定类变量(dichotomized nominal variable):

image

假定你的回归方程是 Y = b0 + b1X + b2Z + b3XZ,其中Z是调节变量、含有两个组别(如男女,分别取值1和0,当然也可取1和2或其它数值,但如下述,取1和0会简化结果的解读和制图)。再假定你的回归结果是b0 = 9.7, b1 = 0.3, b2 = 9.7, b3 = -9.1(这里的系数都是为了制图方便而编出来的),那么,男女两组的方程分布是 Y = 19.4 + 0.6X 和 Y = 9.7 + 0.3X(具体过程略过,但你应该逐步演算一遍,以确保理解男女分组方程的来历以及各自与总方程的异同、如女性组方程的b0和b1与总方程的b0和b1相同,女性b0与男性b0之间的差别就是总方程的b2,女性b1与男性b1之间的差别就是总方程的b3,等等)。有了这两个方程,就可以分别算出男女两组在X的最大和最小值时Y的预测值(这一步可以搬到Excel里做,比SPSS方便)。假定X在1-100之间变化,那么当X=1时,男性的Y = 19.4 + 0.6 x 1 = 20、女性的Y = 9.7 + 0.3 x 1 = 10;而当X=100时,男性的Y = 19.4 + 0.6 x 100 = 80、女性的Y = 9.7 + 0.3 x 100 = 40。根据这四组数据(1、20;100、80;1、10;100、40),就可以画出图1了。

二、调节变量是一个三分的定类变量(trichotomized nominal variable):

如果调节变量Z是一个含三个组的定类变量(或含三个层次的定序变量、但被当作定类变量处理;如果你想将其当作定距变量处理,见下例),需要先为Z构建两个取值分别为1和0的二分变量(见上例),分别记为Z1和Z2,而回归方程则为Y = b0 + b1X + b2Z1 + b3Z2 +b4XZ1 + b5XZ2。假定Z是职业,Z1是白领 = 1、其他 = 0;Z2是退休 = 1、其它 = 0;蓝领是基准组、在Z1和Z2上都取0。为了省事,我将图1中的男性数据改为白领、女性数据改为蓝领、只增加退休组的数据。而回归结果为 b0 = 9.7, b1 = 0.3, b2 = 9.7, b3 = 50.7, b4 = -9.1, b5 = -51.1。如上例一样,现在可以根据b1-b5的系数以及Z1和Z2的取值,求出三个职业组各自的方程:

image白领组(即Z1 = 1、Z2 = 0):Y = 19.4 + 0.6X

蓝领组(即Z1 = 0、Z2 = 0):Y = 9.7 + 0.3X

退休组(即Z0 = 1、Z2 = 1):Y = 60.4 -0.4X

最后用画图1的方法画出图2(具体步骤略过,但希望你自己演绎一遍)。其中前两组与图1相同(因为我就是用同一批数据构建的),而退休组因含有一个负值的b1所以呈现向下的趋势。

三、调节变量是一个定距变量:

定距变量往往有很多个值,不可能也不必要对每个值画一条线,一般是取两、三个“代表性”(representative或illustrative)的值各画一条线。如果是取两个值,一般取Z的平均数的正负一个标准差的值(即Z值上第16%位和第84%位的值);如果取三个值,则将平均数作为第三个值。假定这里的Z是年龄,其平均值 = 40,标准差 = 20,而回归系数b0 = 20, b1 = -0.067, b2 = 0.50, b3 = 0.008,我们取Z的均值(40)、大于均值一个标准差(60)和小于均值一个标准差(20),分别得到以下三个方程:

image60岁老年:Y = 50 + 0.39X

40岁中年:Y = 40 + 0.24X

20岁青年:Y = 30 + 0.08X

然后用与图1和图2相同的方法画出图3(具体略过)。

四、其它各种可能性:

如果Z是一个中心化(centralized,见)的值(这时,X也应该是一个中心化的值),那么需要在解析出上述公式后,再将Z(和X)的值减去其平均值而得到其“原始值”,并在图形中以原始值来设定X轴和Z的斜率。

如果有两个或更多的调节变量,分组方程的解析并不困难、但画图就有点复杂了,一般是用k个图来表示,其中k等于其中一个调节变量的组别数。假定一个调节变量是性别、另一个是年龄。可以用两个图来分别显示:一是 男性中年龄、二是自变量X的交互效应和女性中年龄与自变量X的交互效应。或者用三个图来分别显示年龄与自变量X在老年、中年和青年中的交互效应。究竟用性别还是用年龄作为第一层的分组指标(其实也就是调节变量的调节变量),取决于你的研究假设:你最终想比较的是什么?

最后,如果你用的是方差分析,上述原则同样全部适用。其实SPSS方差分析也可以产生回归系数的。

如何处理和报告含高度相关自变量的回归分析?

2009/03/28 4 条评论

>

Michael @ 2009-03-27:

祝老师您好,我看到很多多元线性回归没有报告自变量之间的相关性,是否只需要通过共线性检验就可以忽略自变量之间的相关性呢?另,我想分析两个高度相关(相关系数=0.8)的自变量A、B与Y的关系;CFA分析显示A、B具有显著差异(卡方值变化),我能否先用其中一个变量如A作用因变量,B作为自变量构建一个回归模型F,然后,用B和F模型形成的残差与Y回归呢?还是直接把AB放入回归模型?非常感谢!

庄主 @ 2009-03-28:

一、是否需要报告自变量之间相关程度?据我所知,绝大部分期刊确实没有将其作为必须报告之信息,也许是因为这一信息并不影响读者对回归模型的总解释力(即R平方)的理解。当然,高度相关的自变量即使能通过共线性检验,其统计显著性甚至系数的正负符号还是有可能受到影响(参见“如何在回归分析中检验和解读交互影响”和其他前贴)。所以,作为作者,不但有责任报告自变量之间的相关程度(但并不一定需要一个表格,用一两句话注明那些相关系数高于0.5的自变量即可),更需要根据R平方之变化值(“如何用block方法检验交互影响?”)或semi-partial R平方(“ΔR2与Semipartial R2”)等结果来检验和解读有关自变量的显著性。

二、如何将高度相关的自变量输入回归模型?一般的做法是将所有自变量(即你的A和B)同时引入回归分析,然后用上述方法来检验各自的显著性和独立贡献程度。这些方法不但在统计理论是成熟的,而且在解读时也是便利的。你建议的方法,其实就是将A和B之间的共同影响部分全部划归为B(这种做法与我在block方法中讲的先引入B、再引入A的结果一模一样),这就需要你有充分的理论根据(如B是A的自变量)才有意义,不然会导致人为夸大B的影响而缩小A的影响。

为了便于其他读者理解我们这里的讨论,让我用几个公式来说明一下。你的回归模型是

Y = b0 + b1A + b2B + e (公式一)

其中e是Y中无法被A和B解释的残差。因为A和B高度相关(r = 0.8),你打算分两步来检验公式一:

A = c0 + c1B + f (公式二)

Y = b0′ + b1’f + b2’B + e’ (公式三)

其中公式二中的f是A中无法被B解释的残差(也即A与B无关的部分),因此当作一个自变量进入公式三。如果用R平方来考察上述模型,其与block方法中的部分结果是一样的。在block方法中,你可以先检验

Y = b0 + b2B + e (公式四)

得到R42,它反映了B对Y的影响(其中包括了B和A的共同影响),然后再加入A(即检验公式一)而得到R12,而ΔR = R12 – R42的差即反映了A对Y的独立影响。

注意,R12,与公式三的R32应该是等值的、e和e’也应该相同;但b0和b’0、b1和b’1、b2和b’2则有可能不同,一般来说,b2’会大于b2、b1’则小于b1,因此我认为你的方法可能会“人为夸大B的影响而缩小A的影响”。当然,这种风险在上述的(不完整)block方法中也同样存在。

那么,应该如何处理呢?我在上述的几贴中已详细介绍过,这里只简单重复一下。先分别检验公式一、四和五(见下),

Y = b0 + b1A + e (公式五)

然后分别计算Δ1 = R12 – R42、Δ2 = R12 – R52和Δ3 = R12– R42 – R52,其中Δ1反映了B的独立影响;Δ2反映了A的独立影响;Δ3反映了A和B的共同影响。如果A和B完全无关,Δ3则为0,但在本例中,因为A和B高度相关,所以Δ3可能远远大于Δ1和Δ2。因此,这部分影响归功于谁,是十分重要而又复杂的问题,不能随意处置。

如何用block方法检验交互影响?

2009/03/15 6 条评论

>

阳阳:

祝老师,您好!读了您的《如何在回归分析中检验和解读交互影响?》,我大受启发,非常感谢!关于调节变量的检验我还有一个问题想请教您。我的毕业论文有一个调节变量是“年龄阶段”(共分为三个年龄阶段,即是一个包含三个水平的类别变量),自变量(X)和因变量(Y)各是一个连续变量。我的考虑是把调节变量转化为虚拟变量(D1,D2),则最后要检验的方程为:Y=a+bX+cD1+dD2+eX*D1+fX*D2。我的疑问是,在检验中,是把X、D1、D2构成“Block 1”,而X*D1和X*D2一起构成“Block 2”?还是“Block 1”不变,把X*D1构成“Block 2”,而X*D2构成“Block 3”呢?另外,我的假设是“X与Y负相关,而处于不同年龄阶段(即调节变量)的个体,这种负相关的强度有区别,具体为:年龄阶段二 > 年龄阶段一 > 年龄阶段三”,第一次使用spss,我只会解读包含两个水平的调节作用,心里很着急,期盼您的指导!非常感谢!

庄主:

你没有说清第一个问题(是把X*D1和X*D2当作一个block还是两个block进入回归)的目的,但我估计是想因此来检验e和f的统计显著性。你的思路应该是受到stepwise regression(逐步回归)的影响。如果你查看一下我的前贴(大部分还在http://zjz06.ycool.comhttp://zjz06.spaces.live.com上,还没有转过来),就会知道我是强烈反对用逐步回归来做显著性检验的(逐步回归可以用了做预测模型的构建,但那完全是另外一种研究)。

你应该采用的是full-1的思想。即通过比较你的full model与full-1 (减掉一个交互项)model之间的差别来检验被减掉的交互项之显著性。在你的案例中,首先估算full model:

Y=a+bX+cD1+dD2+eX*D1+fX*D2               (模型1)

然后估计两个partial models,分别为:

Y=a+bX+cD1+dD2+eX*D1                         (模型2)

Y=a+bX+cD1+dD2+fX*D2                         (模型3)

最后分别比较模型1与模型2、模型1与模型3的R平方之间的差别,从而决定e和f分别是否显著。即,

clip_image002

clip_image002[5]

其中clip_image002[7]clip_image004clip_image006分别是模型1-3的R平方,K1K2K3分别是模型1-3的自变量个数(在你的案例中,分别为5、4、4),N为样本个数。上述比较结果均服从以(K1-K2)和(N-K1-1)和(K1-K3)和(N-K1-1)为自由度的F分布,所以可以通过查阅F值表来决定模型1与2或模型1与3之间是否有显著差别。如果有差别,即说明被省略的该交互项是显著的(因为省略之后模型的拟合度或解释力有了显著的退步)。

你的第二个问题,是通过比较e和f的值及其方向来完成的。鉴于你的假设为“年龄阶段二 > 年龄阶段一 > 年龄阶段三”,你应该将年龄组1作为基准组,即在D1和D2两个dummy变量中取0,而年龄组2在D1中取1、年龄组3在D2中取1。SPSS syntax为:

IF AGE=2 D1=1.
IF AGE=1 D1=0.
IF AGE=3 D1=0.
IF AGE=3 D2=1.
IF AGE=1 D2=0.
IF AGE=2 D2=0.

如果前述检验结果显示模型1与模型2有显著差别、而且e是正值(即年龄组2大于基准组),那么假设一成立;如果模型1与3有显著差别而且f是负值(年龄组3小于基准组),那么假设二成立。

其实上述道理与只有一个dummy交互项相仿,你如有志从事科学研究,应该加强训练自己的举一反三能力。