ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

SPSS与AMOS中介效应分析:Bootstrap置信区间与实操指南

SPSS与AMOS中介效应分析:Bootstrap置信区间与实操指南 简介这是一份面向心理学、社会学、管理学等领域实证研究者的中介效应分析专题报告讲解如何利用SPSS和AMOS完成中介模型从理论到操作的完整流程。报告以就业压力与择业行为为实例先用三变量回归方程说明总效应、直接效应和间接效应的关系再分步梳理依次检验法的操作顺序、完全与不完全中介的判断标准以及系数乘积项检验法中Sobel检验的公式、标准误算法和Goodman I、II检验的差异同时对比了SPSS逐步回归与AMOS结构方程建模两条技术路径。资源包内仅含一个PDF文档压缩后约1.15MB便于直接阅读和打印目前已有一千六百余人浏览学习。报告还围绕Sobel检验临界值的0.97与0.90之辨结合MacKinnon等人的模拟研究给出了参考建议有助于读者理解中介效应检验的功效避免在实证分析中错误判断显著性。1. 中介效应分析不是跑三张回归表那么简单中介效应分析看着是三张回归表的事真正跑起来SPSS 和 AMOS 会给出两套并不完全一致的数。心理学和管理学问卷里X 对 Y 的影响往往被中介变量 M 切掉一部分这就是要拆开直接效应和间接效应的原因。对一个 489 个样本的工作场景数据SPSS 手算的 Sobel 检验显著AMOS 的 Bootstrap 置信区间也显著但中间有无数参数陷阱中心化、标准化系数、联合标准误、MacKinnon 临界值任何一个都会让结论翻车。下面按“依次检验→Sobel→SPSS 宏→AMOS 潜变量模型”的顺序适合正在跑毕业论文或期刊复现的人。2. 在 SPSS 里用依次检验把系数钉死2.1 数据准备合并观测指标并中心化原始数据结构里工作不被认同有领导不认同、同事不认可、客户不认可三个观测指标焦虑有心跳、紧张、坐立不安三个指标工作绩效只有效率低、效率下降两个指标。即使将来要用 AMOS 做潜变量模型我也建议先在 SPSS 里把它们合成显变量跑一遍因为显变量的结果最容易向审稿人解释也方便和结构方程结果对照。合成时常见做法是取项目均值而不是求和。取均值能保留原始量尺回归系数读起来更自然求和会让截距和斜率整体平移。SPSS 里的计算语法如下* 合并观测指标为潜变量得分. COMPUTE X MEAN(lingdaoburenke, tongshiburenke, kehuburenke). COMPUTE M MEAN(xintiao, jinzhang, zuolibuan). COMPUTE Y MEAN(xiaolvdai, xiaolvxiajiang). EXECUTE. * 计算全样本均值再用原始值减均值做中心化. AGGREGATE /OUTFILE* MODEADDVARIABLES /BREAK /X_meanMEAN(X) /M_meanMEAN(M) /Y_meanMEAN(Y). COMPUTE X_c X - X_mean. COMPUTE M_c M - M_mean. COMPUTE Y_c Y - Y_mean. EXECUTE.MEAN函数默认跳过缺失值只要该行至少有一个有效值就按剩余有效项计算均值如果你要求更严格比如六个题目里最多允许一个缺失可以用MEAN.5一类写法。AGGREGATE配合BREAK空语句表示对全样本求均值再把均值作为新变量拼回原数据最后用原始值减均值得到离均差。离均差之后常数项会趋近 0但回归斜率不变中心化也不是标准化X_c 的单位仍然是原量尺后续算中介效应占比 ab/c 时才能保持一致性。2.2 三次回归和温忠麟检验程序中介效应检验程序有很多版本国内实证文章最常引的还是温忠麟程序先检验 X 对 Y 总效应 c显著则继续再检验 X 对 M 的效应 a 与 M 对 Y 的效应 b如果 a、b 都显著就依次判断 c 是否显著若 a、b 之一不显著再做 Sobel 检验兜底。SPSS 里对应三步* 第一步Y cX e1看总效应 c. REGRESSION /STATISTICS COEFF OUTS R ANOVA /DEPENDENT Y_c /METHODENTER X_c. * 第二步M aX e2看 a. REGRESSION /STATISTICS COEFF OUTS R ANOVA /DEPENDENT M_c /METHODENTER X_c. * 第三步Y cX bM e3同时进入 X 和 M. REGRESSION /STATISTICS COEFF OUTS R ANOVA /DEPENDENT Y_c /METHODENTER X_c M_c.第一个REGRESSION块得到总效应 c第二个块得到中介效应前半段 a第三个块必须把 X_c 和 M_c 同时放进ENTER得到的是控制 M 后 X 对 Y 的直接效应 c以及控制 X 后 M 对 Y 的效应 b。注意不要把第三步拆成两次回归否则 b 不是净效应c 也无法解释。以原报告的数据为例第三步里 X_c 的未标准化系数是 0.670M_c 的未标准化系数是 0.226如果用标准化解对应 0.564 和 0.213。只要 b 的 p 值小于 0.05c 也显著就可以判定为部分中介。严格区分完全中介和部分中介的意义正在这里c 不显著意味 X 对 Y 的影响完全通过 M但现代方法学界更建议用 bootstrap 置信区间判断间接效应而不是把“完全中介”当成唯一结论。2.3 Sobel 检验公式、标准误和临界值三件事当 a、b 只有一个显著时依次检验的检验力不足需要直接检验乘积项 ab 是否为 0。Sobel 检验的统计量是 z ab / s_ab其中联合标准误 s_ab 的常用近似是s_ab sqrt(a²·s_b² b²·s_a²)拿到回归结果后可以手工算也可以丢给 R 或 Python。下面这段 R 代码用原报告 macro 输出的 a、b 和各自标准误复算# 从回归结果中提取 a、b 和标准误 a - 0.5975 b - 0.2255 se_a - 0.0430 se_b - 0.0404 # 乘积项和联合标准误 ab - a * b se_ab - sqrt(a^2 * se_b^2 b^2 * se_a^2) z_sobel - ab / se_ab cat(ab , ab, \n) cat(se_ab , se_ab, \n) cat(z , z_sobel, \n)运行结果中 ab 0.1347se_ab 约 0.0261z 约 5.16。se_ab的计算分母用到了 a 和 b 两个标准误因此当 a 或 b 的估计不稳时Sobel 的 p 值也会跟着波动。大样本下 Goodman I 和 Goodman II 的结果与 Sobel 趋同但它们的联合标准误公式不同实际报告中你只要说明“采用 Sobel 检验并用 Bootstrap 置信区间确认”就足够。这里最容易被忽略的是临界值Sobel 统计量不服从正态分布不能拿 1.96 当作 0.05 显著性水平的临界值。MacKinnon 等给出的临界表里N200 时双侧 0.05 对应的临界值大约在 ±0.90 附近而不是 1.96。原报告里专门质疑过温忠麟文章对 0.97 的解释认为 0.97 对应的是表中的 0.04 概率列。实际判断时与其纠结临界表不如用 bootstrap 置信区间因为它不需要对 ab 的正态性做假设。提示Sobel 检验的 z 值不要用标准正态分布的 1.96 做临界值小体积样本下会高估显著性。3. 用 SPSS 宏脚本把间接效应和 Bootstrap 一次跑完3.1 为什么还需要一个宏脚本SPSS 自带菜单没有一键输出间接效应置信区间的功能只有回归表里的系数和标准误。Preacher 和 Hayes 在 2004 年前后发布的 SOBEL 宏脚本是当时在 SPSS 里补全中介分析最快的方式后来的 PROCESS 宏也在同一思路上把直接效应、间接效应、bootstrap 置信区间集成在一起。你用它们的原因只有一个让审稿人看到的不只是“ab 显著”而是“ab 的 bootstrap 95% 置信区间不包含 0”。脚本运行方式不算复杂先通过INSERT把脚本文件读进 SPSS或者把宏文件放到 macros 目录后在脚本对话框里分别指定自变量 X、中介变量 M、因变量 Y。bootstrap 抽样次数在对话框里设置原报告用的是 1000 次现在外审常见要求写 5000 次。需要注意这些宏是基于显变量回归的处理不了潜变量模型数据带有较多缺失值时bootstrap 抽样的重样本可能出现协方差矩阵非正定这时先做缺失值清理再跑。3.2 读懂宏输出直接效应、总效应与间接效应宏的输出用b(YX)、b(MX)、b(YM.X)、b(YX.M)标记路径系数。以下面这组真实输出为例输出项未标准化系数标准误说明b(YX) c0.80420.0395X 对 Y 的总效应b(MX) a0.59750.0430X 对 M 的效应b(YM.X) b0.22550.0404控制 X 后 M 对 Y 的效应b(YX.M) c0.66950.0453控制 M 后 X 对 Y 的直接效应Indirect effect0.13470.0261ab 的乘积Sobel z5.1647p 0.001正态近似下的检验Bootstrap 95% CI0.08000.1928区间不含 0基于 1000 次抽样读输出时先看Indirect effect的 Bootstrap 置信区间再看b(YX.M)是否显著。这里的b(YX.M)是控制中介变量后的直接效应它显著则说明 X 对 Y 仍有直接路径属于部分中介不显著则不拒绝完全中介。表里最后一行的方差变异 23.16%是 Fairchild 等2009公式算出的间接效应解释比例写报告时可以放进稳健性检验部分。3.3 手算表和宏输出的差异来自哪里原报告把“无脚本”和“macro 脚本”两套结果放在一起比较看起来 macro 的总效应 0.804 明显大于无脚本的 0.678容易让人误以为 bootstrap 提高了效应量。其实两个数字不是同一种系数无脚本表格里报告的是标准化 Betamacro 输出的是未标准化 B。标准化系数会受 X、Y 标准差影响而 B 保留原始单位数值自然不同。两者真正可以比的是中介效应占比无脚本 0.533×0.213/0.6780.167macro 0.1347/0.80420.167结论高度一致。所以当你比较两套软件结果时先确认自己拿的是不是同一个口径。很多人把 AMOS 的标准化间接效应和 SPSS 的未标准化系数混在一起算占比得出来的数字就会离谱。后面写报告时最好在方法部分注明“效应占比基于未标准化系数计算”。4. AMOS 里跑潜变量中介模型Bootstrap 置信区间是关键4.1 为什么要用 AMOS 再跑一遍SPSS 里的显变量回归默认项目均值没有测量误差。实际问卷里每个题目都有随机误差潜变量分析会在测量阶段把载荷和残差分离出来再估计结构路径所以 AMOS 给的是“潜变量层面”的中介效应。模型如果只有三个显变量SPSS 宏够用一旦自变量或中介变量是成熟量表且样本量在 200 人以上我一般会建议用 AMOS 复核一次。因为测量误差导致的衰减会让 a、b 都被低估最终 ab 也会被低估。这里以工作不被认可为外生潜变量焦虑为中介潜变量绩效表现为因变量潜变量。测量指标数量分别是 3、3、2。两个测量指标也可以识别潜变量但需要给其中一个载荷固定为 1另一个自由估计如果两个指标之间相关很高残差间不能随意放相关否则模型自由度不够。4.2 AMOS 参数设置5000 次 Bootstrap 和 BC 置信区间在 AMOS 图形界面里先画好潜变量与观测变量的路径误差项依次命名为 e1 到 e11并确保每个潜变量都有一个观测变量的载荷固定为 1。然后按下面的顺序设置打开 Analysis Properties切到 Bootstrap 选项卡。勾选 Perform bootstrap样本数填 5000。在 Bootstrap 类型里勾选 Bias-corrected confidence intervals如果软件版本支持也可以同时勾选 Percentile confidence intervals 用于交叉验证。在 Output 选项卡勾选 Standardized estimates以及 Indirect, direct, total effects。运行前记录软件版本和抽样次数方便他人复现你的置信区间。5000 次 Bootstrap 对绝大多数研究足够稳定。如果样本小或模型复杂每次重抽样都可能出现协方差非正定导致 AMOS 报错“The moment matrix is not positive definite”。常见处理是先检查是否有缺失值再看观测变量是否严重非正态必要时用 Bollen-Stine bootstrap 或改用稳健标准误。不要把失败归因于软件版本。4.3 从输出表拆解效应AMOS 文本输出里有三张表需要配合看Standardized Total Effects 是总效应Standardized Direct Effects 是 cStandardized Indirect Effects 是 X 通过 M 间接影响 Y 的路径。判断中介效应看间接效应表里 X 对 Y 的 BC 95% 置信区间是否包含 0。输出表看什么判断逻辑Standardized Total Effects总效应 c包含直接、间接两条路径Standardized Indirect Effects间接效应 abBC 95% CI 不含 0则中介成立Standardized Direct Effects直接效应 c显著则部分中介不显著则完全中介原报告里模型卡方为 26.0自由度 17卡方自由度比 1.529p 值大于 0.05说明模型与数据没有显著差异再加上 CFI、TLI、RMSEA 等拟合指数理想模型可以接受。这里有一个常见审稿问题AMOS 给出的 Standardized Indirect Effects 不附带标准误只有 bootstrap 上下界表和双尾显著性。报告里应该把未标准化间接效应和 BC 置信区间一起写因为标准化的点估计方便比较未标准化的才方便后续算效应占比。4.4 AMOS 和 SPSS 结果不一致时怎么办显变量模型和潜变量模型不一致很常见。如果 SPSS macro 的间接效应显著、AMOS 的间接效应 BC 区间跨 0优先检查测量模型的载荷和信度。某个潜变量的项目载荷低于 0.5 时量表总分的方差噪声会掩盖中介路径这时把最低载荷的条目删掉重跑往往就能得到一致结论。反之如果 AMOS 显著而 SPSS 不显著也说明测量误差衰减可能在 SPSS 侧拖低了 a 或 b此时建议以 AMOS 潜变量结果作为主结果SPSS 作为稳健性检验。5. 报告里值得写进方法部分的三个细节5.1 别只报 p 值报 BC 置信区间Sobel 检验的 z 值使用的是非正态近似审稿人越来越不接受单独报一个 z5.16、p0.001 的写法。稳妥的写法是“间接效应 ab0.1347基于 5000 次 bootstrap 的偏差校正置信区间为 [0.0800, 0.1928]区间不包含 0中介效应显著。” 这里的 BC 区间由 AMOS 或 PROCESS 直接给出不用自己算。如果区间上界或下界非常接近 0.05处理方式是增加 bootstrap 次数到 10000并如实报告不要试图换一种 CI 类型挑一个好看的结论。5.2 中介效应占比要交代口径原报告里写中介效应占总效应的 0.167即 ab/c 0.533×0.213/0.678。这个公式只有在 a 和 b 同号时才能给出有意义的比例。如果数据存在遮掩效应a 和 b 一正一负ab/c 会变成负值或大于 1此时它不是“中介占比”而是间接效应与总效应方向不一致的信号。面对这种情况我一般只报告间接效应本身和置信区间不再写占比避免误导读者。另外一个需要交代的口径是分母c 到底用未标准化还是标准化必须和分子 ab 保持一致推荐统一使用未标准化系数。5.3 验证把 AMOS 间接效应放回 SPSS 回归里对账拿到 AMOS 的 indirect effect 后可以用一个简单公式验证是否对得上间接效应 路径 a × 路径 b。AMOS 输出里看不到路径乘积的标准误但你可以把两个路径的标准化系数乘起来和 Standardized Indirect Effects 表对照。如果 AMOS 给出的间接效应是 0.214而路径 a0.554、路径 b0.387乘积是 0.214说明表的行和列没有读反。再用 SPSS 显变量结果和 AMOS 结果对比两个效应占比相差不超过 0.03 时说明中介路径稳定差别过大则回到测量模型找原因。拿 0.1347 和 0.17 这类比例对比时务必确认两边分母都是未标准化系数否则你汇报的中介效应占比就会错。本文还有配套的精品资源点击获取
返回列表