中介作用分析

如果需要进行中介作用分析,常见有两种做法。分别如下:

第一种:因果逐步回归检验法;

第二种:乘积系数法检验法;

如果是使用第一种做法进行中介作用分析,其理论来源为温忠麟学者提出,具体是通过分层回归方法进行研究,请参考此帮助手册有详细说明: https://www.spssau.com/helps/otherdocuments/mediator.html

第一种因果逐步回归检验法简单易懂、容易理解和解释,因而受到广泛的应用,但有学者认为其检验效能较低,有时候本身有中介作用但却显示没有中介作用。

第二种为乘积系数检验法,其原理是检验a*b是否呈现出显著性,其具体做法上分为两种,一种是使用Sobel检验,另外一种是使用Bootstrap抽样法进行检验。Sobel检验要求数据正态分布且需要大样本,并且要求a*b也符合正态分布,因而这种要求导致其检验功效较低。当前较为流行的检验方法为Bootstrap抽样法,其检验功效相对较高,并且对于中介作用抽样分布并不进行限制,因此使用情况越来越多。

当前SPSSAU问卷研究》中介作用使用Bootstrap抽样法进行检验。并且支持一次性放置多个自变量X,多个中介变量M,以及支持放置控制变量。

中介效应案例

  • 1、背景

    当前有一个研究(样本量为200),自变量有3个,中介变量共有2个,因变量有一个,希望研究3个自变量X对于因变量Y的影响时,2个中介变量是否会起到桥梁中介作用。

    变量类型 名称
    自变量 X1,X2,X3
    中介变量 M1,M2
    因变量 Y

    模型如下图如下:

    模型中涉及3个X对于2个M,再对1个Y的影响。中介作用的路径数量为3*2=6条路径。

  • 2、理论

    本部分从两个角度说明中介作用,第一部分是中介作用的原理;第二部分是中介作用检验的步骤。

    第一部分:中介作用检验原理

    在研究中介作用时,其有多种做法,常见做法有两种,第一种是因果逐步回归检验法,使用分层回归(SPSSAU->进阶方法)进行研究。第二种是乘积系数法检验法,其具体做法上可分为Sobel检验和Bootstrap抽样法检验;第一种做法相对简单易懂因而得到广泛使用,但是其检验效能相对较低,因此当前更适合的做法是使用第二种即乘积系数检验法,并且使用Bootstrap抽样法进行中介作用检验。

    中介作用的检验基本理论数学模型如下:

    中介作用共分为3个模型。针对上图说明如下:

    • 模型1:自变量X和因变量Y的回归分析;目的为得到总效应c值;

    • 模型2:自变量X,中介变量M和因变量Y的回归分析;目的是得到直接效应c’值,以及中间效应过程值b;

    • 模型3:自变量X和中介变量M的回归分析;目的是得到中间效应过程值a。

    • 模型1和模型2的区别在于,模型2在模型1的基础上加入了中介变量M。

    上图中回归系数a和回归系数b的乘积项(a*b)称为间接效应,如果其呈现出显著性,那么就说明具有中介作用,反之不具有显著性,则说明不具有中介作用。检验a*b的显著性用于判断是否具有中介作用,这种做法即称为乘积系数检验法。而具体Bootstrap抽样法检验是指a*b这个回归系数的95%置信区间是否包括数字0;如果说95%置信区间不包括数字0,则说明具有中介作用;如果说95%置信区间包括数字0,即说明没有中介作用。

    第二部分:中介作用检验步骤

    理解了上述中介作用的原理,即通过a*b的Bootstrap区间进行中介效应检验后。接下来参考学者温忠麟等(2014)因果逐步回归法的检验步骤进行说明,如下图:

    上图为中介作用的检验步骤,SPSSAU严格按照此检验步骤进行。具体说明如下:

    • 第一:c表示X对Y时的回归系数(模型中没有中介变量M时),即总效应;

    • 第二:a表示X对M时的回归系数,b表示M对Y时的回归系数,a*b为a与b的乘积即中介效应;

    • 第三:95% BootCI表示Bootstrap抽样计算得到的95%置信区间,如果区间不包括0则说明显著;

    • 第四:c’表示X对Y时的回归系数(模型中有中介变量M时),即直接效应;

    • 第五:如果a和b显著,且c’不显著,则为完全中介;

    • 第六:如果a和b显著,且c’显著,且a*b与c’同号,则为部分中介作用;

    • 第七:如果a和b显著,且c’显著,且a*b与c’异号,则为遮掩作用;

    • 第八:如果a和b至少一个不显著,且a*b的95%的95% BootCI包括数字0(不显著),则中介作用不显著;;

    • 第九:如果a和b至少一个不显著,且a*b的95% BootCI不包括数字0(显著),且c’不显著,则为完全中介作用;

    • 第十:如果a和b至少一个不显著,且a*b的95% BootCI不包括数字0(显著),且c’显著,且a*b与c’同号,则为部分中介作用;

    • 第十一:如果a和b至少一个不显著,且a*b的95% BootCI不包括数字0(显著),且c’显著,且a*b与c’异号,则为遮掩作用;

    • 特别提示:
    • SPSSAU直接将中介作用的检验过程自动化,并提供出上述提及模型的结果值等,研究者只需要关注“中介作用检验结果汇总”和“中介作用效应量结果汇总”中的检验结果即可。

    • 遮掩效应是一种现象,数理角度上表现为a*b的系数符号与c’的系数符号相反,实际研究中应结合自身专业知识进行阐述。

  • 3、操作

    本例子中包括3个自变量,2个中介变量;操作截图如下:

  • 4、SPSSAU输出结果

    • SPSSAU共输出4类表格;
    • 第一是“中介作用分析结果”表格;该表格把模型结果全部列出,即检验中涉及的系数a,b,c或c’等;通常情况下仅需要描述中介作用分析时涉及的模型,简要说明即可,实际研究中关注重心在于中介作用的检验结果,即下面的“中介作用检验结果汇总”表格。

    • 第二是“中介作用检验结果汇总”表格;该表格列出所有中介路径系数涉及的具体值,以及bootstrap抽样得到的置信区间值,以及中介作用检验结论情况;

    • 第三是“中介作用效应量结果汇总”表格;该表格展示中介作用检验后的效应量情况,包括效应占比情况等。

    • 第四是“中介效应模型检验-简化格式”表格;该表格为“中介作用分析结果”表格的简化格式。

  • 5、文字分析

    中介效应模型共分为三类回归模型;

    • 第一:第1类回归模型为自变量X与因变量Y进行回归模型构建;

    • 第二:第2类回归模型为自变量X与中介变量M进行回归模型构建(如果多个中介变量则多个模型);

    • 第三:第3类回归模型为自变量X和中介变量M一起与因变量Y进行回归模型构建;

    从上表可知:中介效应分析共涉及4个模型,分别如下:

    • Y=1.696-0.156*X1+0.353*X2+0.358*X3

    • M1=0.570+0.100*X1+0.124*X2+0.623*X3

    • M2=1.484+0.018*X1+0.231*X2+0.370*X3

    • Y=0.725-0.202*X1+0.189*X2-0.059*X3+0.363*M1+0.515*M2

    事实上表格仅呈现出结果,比如X1->M1->Y这条中介作用时,a是指上图中的0.100,b是指图中的0.363,c’指上图中的-0.202,c指上图中的-0.156。

    中介作用的检验严格按照检验步骤进行,最终检验结果如表格所示。总共3个自变量X,2个中介变量 M,总共有3*2=6条中介路径。其中2条路径为完全中介,2条路径为部分中介,1条路径为遮掩效应,1条路径不显著。具体为什么会有中介,也或者为什么没有中介作用等,属于专业知识领域讨论范畴,本案例不深入说明。同时在实际研究中,通常还可以针对中介作用的占比即效应量情况进行分析,如下:

    • 在完成中介作用检验后,还可进一步分析效应量(效应占比):
    • 第一:如果是完全中介,则效应占比为100%;

    • 第二:如果是部分中介,则效应占比计算公式为:a*b/c;

    • 第三:如果是遮掩效应,则效应量为中介效应与直接效应的比值,计算公式为:| a*b/c’ |;

    • 第四:如果是中介作用不显著,则效应占比为0%。

    如果是完全中介,即说明X会全部通过中介变量M去影响Y,即效应占比为100%;如果是部分中介,即说明X一部分由中介变量M去影响Y,还有一部分是X自己去影响Y;如果是遮掩效应,效应量分析时不能使用a*b/c这个公式,因为会出现负数这种无意义的数字,因此改使用中介效应与直接效应进行相除,并取其绝对值,用来表示效应的大小情况; 如果中介效应不显著,那相当于没有中介效应,即效应占比为0%。

  • 6、剖析

    涉及以下几个关键点,分别如下:

    • 中介作用分析前是否需要自变量对因变量产生影响?
    • 使用乘积系数法进行中介作用分析时,并不要求自变量对于因变量产生影响关系。即并不要求直接效应呈现出显著性。应该完全按照检验流程和步骤进行分析。

    • 中介作用是否需要首先进行标准化处理?
    • 进行标准化或中心化处理,通常是出于共线性问题的考虑而进行。事实上并无其它帮助,研究者可以进行标准化处理,当然如果没有共线性问题不进行也不妨。可使用数据处理-》生成变量功能进行处理。

    • 如果有量纲问题时,比如M值特别特别大,此时a系数可能很大,a*b较大,c较小,最后a*b/c较大>100%,基于此种原因时建议还是需要对自变量和中介变量均进行标准化处理。但如果数据本身并没有量纲问题(比如问卷量表数据均为5个选项量纲一致,则可不进行标准化处理)。

    • 有调节的中介作用如何进行?
    • 如果是分析有调节的中介作用,其涉及多种模型情况,可使用SPSSAU问卷研究->调节中介进行分析。

疑难解惑

  • 自变量X对于因变量Y没有影响怎么办?
  • 调中介作用分析时,并不要求自变量X对因变量Y产生影响作为前提条件,因为直接效应(X影响Y)和中介效应(X通过M影响Y)是完全两回事情。中介作用检验应该完全按照检验流程和步骤进行分析。

  • 中介作用有一个检验程序Sobel在哪里?
  • 使用乘积系数检验法进行中介作用验证时,可使用Sobel检验和Bootstrap抽样法检验法,SPSSAU默认是使用后者,如果希望进行Sobel检验,请参考此页面进行: http://quantpsy.org/sobel/sobel.htm

  • 如果数据是显变量如何处理?
  • 如果数据是显变量,此时可转换成潜变量再处理即可。使用生成变量-》平均值功能。当然如果是使用结构方程模型进行研究分析中介作用时,建议使用因果逐步回归检验法进行中介效应验证。SPSSAU提供的结构方程模型暂不提供Bootstrap抽样法检验。

  • 间接效应和中介效应的区别是什么?
  • 通常情况下二者意义完全一致,但细微区别在于比如X->M1->M2->Y这种链式中介时,一般用间接效应描述会更易理解。

  • SPSSAU进行Bootstrap抽样次数是多少?
  • 如果样本量小于等于500,抽样次数是5000次;如果样本量介于500~2000(含),抽样次数是1000次;如果样本量在2000以上,抽样次数是50。

  • SPSSAU进行链式中介?
  • 如果需要分析链式中介,即比如X->M1->M2->Y,分析X先影响M1再影响M2再影响Y这种模型,可直接选中参数‘中介类型’为‘链式中介’即可。

  • Bootstrap自抽样的原理是什么?
  • Bootstrap的原理说明举例如下:比如有一份500个样本的数据做中介作用分析且使用bootstrap自抽样法。其计算原理类似如下:

  • Step1、有放回随机抽样得到1份500个样本的数据,然后运行中介模型得到回归系数等;

  • Step2、如果bootstrap抽样次数为1000,那么重复Step1进行1000次即可;

  • Step3、将1000次运行分析的回归系数值计算95%区间即为Bootstrap 95%CI值。

  • 备注:上述具体名称为‘百分位bootstrap法’,除此之外,SPSSAU还提供‘偏差校正bootstrap法’。二者功能一致,原理类似,但其具体细节算法不一致。如果没有特别需求,任意使用一种即可。具体参考文献可见:方杰,张敏强,李晓鹏.中介效应的三类区间估计方法[J].心理科学进展,2011,19(05):765-774.

  • Bootstrap自助抽样法时,每次抽样数量是多少?
  • Bootstrap原理上是抽样很多次而且是放回抽样,每次抽样的次数为样本量,比如有500个样本且抽样1000次,那么每次都放回抽取500个样本,重复抽样1000次。

  • 效应占比如何分析?
  • SPSSAU在输出效应占比的同时,也会输出效应占比计算公式。不同的文献在计算中介效应的个别点(比如掩遮效应时)时并不完全一致,SPSSAU参考文献为:温忠麟, 叶宝娟. 中介效应分析:方法和模型发展[J]. 心理科学进展, 2014, 22(005):731-745.

  • 如果需要计算直接效应,一般计算公式为(c – a*b)/ c,也或者直接100% - 中介效应即可。

  • 95%区间包括0,为什么显示有中介作用?
  • 中介作用分析有着非常严格的检验流程,绝大多数情况下,95%抽样区间不包括数字0就意味着具有中介作用,但并不完全是这样,最终中介作用的检验需要参考检验流程进行。

  • 中介作用时SPSSSAU与Process结果出现不一致?
  • 中介作用时SPSSSAU与Process结果出现不一致,比如0.1234和0.1233,此类情况正常并且不同的软件出来一定会有类似的gap,其数学原理上是bootstrap,不同的抽样次数以及内部算法上不同的抽样种子)一定会出现该类gap,其数学原理完全一致,但正是数学原理的一致性才会出现gap,但其并不会对结论有任何影响,非常正常。

  • 更多说明原理说明可点击查看

  • SPSSAU中介作用输入bootstrap抽样次数?
  • Bootstrap抽样次数可自行进行选择,常见1000次即可。如果不选择,SPSSAU系统会根据样本量自动提供适合的抽样次数。

  • SPSSAU的bootstrap抽样是非参数还是偏差校正法?
  • SPSSAU于2023.6.30升级,升级后提供两种bootstrap抽样法,分别是非参数百分位bootstrap抽样和偏差校正bootstrap法。

  • 面板数据是否可以进行中介作用?
  • 从数学理论上,面板数据可以直接进行中介作用分析,中介作用分析并不区分是否面板数据,直接分析即可。

  • spssau中介作用分析时,boot ci不包括0但是对应p 值大于0.05?
  • 从原理上有可能出现boot ci不包括数字0但对应p 值>0.05,bootci是基于百分位数原理计算,p 值是基于bootstrap抽样正态分布原理计算(上述为非参数百分位bootstrap抽样法原理,偏差校正bootstrap抽样法原理则不同)。

  • SPSSAU 中介作用中的effect值意义是?
  • 中介作用分析时,effect值一般指回归系数值,其不同情景下意义不同,可指直接效应,间接效应或中介效应对应的回归系数值。

  • 中介作用如何得到标准化效应系数?
  • SPSSAU进行中介作用时,默认输出的a*b值为非标准化系数对应的系数,如果需要使用标准化系数,可针对自变量X和中介变量M进行标准化处理(使用数据处理->生成变量),得到标准化系数后,然后再放入模型中进行分析,得到的系数全部都是基于标准化系数的了。

  • SPSSAU进行三阶段中介作用?
  • 中介作用的检验方法上,通常包括bootstrap自抽样法和三阶段中介作用,默认SPSSAU是使用自抽样法进行检验,如果需要使用三阶段法,可点击查看

  • 自变量X为定类数据如何进行中介作用?
  • 如果自变量为定类数据,一般需要进行哑变量设置后再能分析。虚拟哑变量设置说明,可点击查看

  • Boot自抽样95%CI值不包括effect值?
  • 比如类似上图时,effect值为-0.306, boot自抽样区间为(-0.149,-0.026),自抽样区间范围不包括effect值。从原理上:比如effect值为-0.3。比如抽样10次,分别得到为-0.2,-0.24,-0.25,-0.23,-0.22,-0.21,-0.21,-0.29,-0.23,那么计算95%区间的时候就可能不包括-0.3。此种概率相对很低但从理论上也可以出现,尤其是在数据质量不太好的时候(比如有某标题的数字很多都是固定1个值时)。

  • 为什么间接效应分析表格中值的95%区间(BootCI)值包括数字0,p 值还显著呢?
  • 间接效应分析表格中BootCI是基于自助抽样原理计算得到,而z 检验对应的p 值是基于点估计得到,二者并不数学理论上的对应关系,在偶然的情况下会出现Boot 95%置信区间不包括数字0但是z 检验不显著,也或者Boot 95%置信区间包括数字0但是z 检验显著。

  • 中介作用效应a*b/c大于100%是正常的吗?
  • 如果有量纲问题时,比如M值特别特别大,此时a系数可能很大,a*b较大,c较小,最后a*b/c较大>100%,基于此种原因时建议还是需要对自变量和中介变量均进行标准化处理。但如果数据本身并没有量纲问题(比如问卷量表数据均为5个选项量纲一致,则可不进行标准化处理)。

  • 中介作用95% 置信区间,与p 值结论不一致 ?
  • 间接效应分析表格中Boot CI是基于自助抽样原理计算得到,而z 检验对应的p 值是基于点估计得到,二者并不数学理论上的对应关系,在偶然的情况下会出现Boot 95%置信区间不包括数字0但是z 检验不显著,也或者Boot 95%置信区间包括数字0但是z 检验显著。