统计百科 ·

Johnson-Neyman技术是什么?调节效应显著性区间的精确定位

统计百科:Johnson-Neyman技术(J-N法)通过计算调节变量的精确显著性边界,替代传统±1SD简单斜率检验,给出交互效应在调节变量全值域上的显著区间,是调节效应分析最严谨的探查工具,支持APA 7th规范报告。

调节效应回归跑出来交互项显著,接下来怎么"探查"?传统做法是取±1SD的高低两组做简单斜率——但这样你只检验了两个点,调节变量的其余取值到底在哪个范围里效应显著、哪个范围里不显著,完全未知。Johnson-Neyman技术(J-N法)解决的正是这个问题:它直接算出调节变量的精确显著性边界("以色列点"),给你一张全值域的显著地图,比±1SD更严谨、信息量更大。


你的调节分析有这些困惑吗?

审稿人或导师关于调节效应报告最常见的追问:

  • "高低组怎么定义的?±1SD的分组依据是什么?"
  • "在调节变量的中间值范围内,交互效应是否仍然显著?"
  • "你报告的是两个点的简单斜率,调节效应的显著区间到底有多宽?"
  • "如何证明调节效应不只是在极端值上才显著?"
  • "Johnson-Neyman区域能否在正文中报告?"

这些问题的答案只有一个工具能直接给出:Johnson-Neyman技术(Johnson-Neyman Technique,简称 J-N 法)


一、什么是Johnson-Neyman技术

概念起源

Johnson-Neyman技术由统计学家 Palmer O. Johnson 与 Jerzy Neyman 于1936年提出,最初用于教育统计研究中检验线性假设并比较回归线的显著性区域。进入心理学、社会科学和管理学后,由 Preacher、Curran 与 Bauer(2006)在 PROCESS 宏的框架下系统化,成为调节效应(交互效应)探查的标准工具。

核心思路

在含交互项的回归模型中:

$Y = b_0 + b_1 X + b_2 W + b_3 (X \times W) + e$

自变量 X 对因变量 Y 的斜率(简单斜率)是调节变量 W 的函数:

$\frac{\partial Y}{\partial X} = b_1 + b_3 W$

这条"斜率关于 W 的函数"在 W 的不同取值处可能显著,也可能不显著。传统简单斜率分析只在 $W = \bar{W} \pm 1SD$ 两个点上做 t 检验;J-N 法则解出使该斜率恰好等于临界显著值(通常 t 对应 alpha = .05)时,W 的精确取值——即显著性边界(Johnson-Neyman点,以色列点)

"以色列点"是什么

J-N点(又称transition point)是调节变量 W 的一个或两个临界值,将 W 的全值域分成若干区段:

  • 区段内:X 对 Y 的简单斜率在 alpha = .05 水平上显著
  • 区段外:简单斜率不显著(效应不能区别于零)

图形上通常表现为"floodlight图":横轴为 W 的全值域,纵轴为简单斜率,两侧为95%置信带,显著区段用阴影标注。


二、J-N法 vs ±1SD简单斜率:为什么更优?

比较维度±1SD简单斜率Johnson-Neyman法
检验点数2个(固定)全值域连续
显著边界精度无法给出精确到小数点后两位
样本分布依赖强(依赖SD分布)弱(基于回归参数)
信息量低(只知道高/低两点)高(知道整个显著区段)
APA推荐趋势广泛接受,但信息不完整顶刊(JPSP等)越来越要求
适用调节变量类型连续变量(强制分组)连续变量(不分组)
报告难度稍复杂,但有标准模板

核心优势:J-N法不需要将连续调节变量人为切分为高低两组(切分本身损失信息),直接在连续值域上定位显著区间,结论更精确,也不受分组阈值选择的主观影响。


三、J-N法的数学原理

简单斜率函数

在二阶交互模型 $Y = b_0 + b_1 X + b_2 W + b_3 XW + e$ 中,简单斜率为:

$\theta_{X|W} = b_1 + b_3 W$

其标准误为:

$SE_{\theta} = \sqrt{Var(b_1) + 2W \cdot Cov(b_1, b_3) + W^2 \cdot Var(b_3)}$

求解临界边界

令 t 统计量等于临界值 $t_{crit}$(对应 alpha = .05,双尾):

$t = \frac{b_1 + b_3 W}{SE_{\theta}} = \pm t_{crit}$

整理后得到关于 W 的二次方程,解得至多两个实根,即 J-N 点。若判别式小于零,则全值域显著(或全不显著)。

置信带(Floodlight图)

每个 W 取值对应一个简单斜率 $\theta_{X|W}$ 及其95%CI:

$CI_{95%} = \theta_{X|W} \pm t_{crit} \times SE_{\theta}$

当 CI 不包含零时,该 W 处的简单斜率显著;J-N 点即为 CI 恰好触碰零的 W 值。


四、何时用J-N法?适用条件

适用场景

  • 交互项 $b_3$ 显著(p < .05):J-N法作为后续探查工具
  • 调节变量 W 为连续变量(如年龄、量表得分、收入水平)
  • 样本量足够(通常 N ≥ 100)以保证简单斜率标准误的稳定性

不适用场景

  • W 为分类变量(2组用独立 t 检验,多组用 ANOVA 简单效应)——此时 J-N 无意义
  • 交互项不显著:若 $b_3$ 不显著,则不需要(也不应该)进行 J-N 探查
  • 三阶交互或更高阶模型:J-N 公式不再适用,需要更复杂的方法

前提假设

与普通 OLS 回归相同:残差正态性、方差齐性、独立性、自变量与调节变量之间无严重多重共线性(中心化可以改善条件数,但不影响 J-N 边界本身)。


五、完整分析步骤

Step 1:建立含交互项的回归模型

建议先对 X 和 W 进行均值中心化(mean-centering),以降低多重共线性、使截距和主效应系数更有意义:

$X_c = X - \bar{X}, \quad W_c = W - \bar{W}$

然后建立:

$Y = b_0 + b_1 X_c + b_2 W_c + b_3 (X_c \times W_c) + e$

Step 2:确认交互项显著

报告 $b_3$ 的 t 检验结果,只有交互项显著才继续 J-N 探查。

Step 3:计算 J-N 边界

在 PROCESS(Hayes,2022,Model 1)中,选项 "jn=1" 自动输出 J-N 点及显著区段。R 语言的 interactions 包(johnson_neyman() 函数)或 reghelper 包均支持。

Step 4:绘制 Floodlight 图

以 W 的全值域为横轴,简单斜率为纵轴,绘制斜率曲线及95%CI带,标注显著区段,并在图例中注明 J-N 边界值。

Step 5:计算显著区段覆盖百分比

报告样本中有多少比例的观测值落在显著区段内,帮助读者判断效应的实际覆盖范围(例如:"76.3% 的样本落在 W 显著区间内")。


六、APA 7th 标准报告模板

方法章节说明

本研究采用层次回归分析(hierarchical regression)检验调节效应,
参照 Hayes(2022)PROCESS 宏(Model 1)的程序。
预测变量与调节变量均进行均值中心化处理以降低多重共线性。
在交互项显著的条件下,采用 Johnson-Neyman技术(Johnson & Neyman,1936;
Preacher et al.,2006)定位调节变量产生显著交互效应的精确值域区间,
alpha 水平设定为 .05(双尾)。

结果报告段落模板

层次回归结果显示,[调节变量]对"[自变量]→[因变量]"路径的调节效应显著,
b = [b3值],SE = [SE值],t([df]) = [t值],p [= .XXX / < .001],
[效应量指标] = .XX([大小]效应)(Step 2 整体 Delta R^2 = .XX,p [值])。

Johnson-Neyman技术分析结果显示,当[调节变量]取值低于 [下界值]
(占样本的 [X]%)或高于 [上界值](占样本的 [Y]%)时,
[自变量]对[因变量]的简单斜率显著(p < .05)。
在下界值以下的区段,b_simple = [值],95% CI [[LL], [UL]];
在上界值以上的区段,b_simple = [值],95% CI [[LL], [UL]]。
整体而言,[W值]处于 [[下界值], [上界值]] 区间内(约占样本 [Z]%)的被试,
[自变量]对[因变量]的预测效应未达显著,表明调节效应在[调节变量]
取中间值时趋于消失。见图[X](Floodlight图)。

填入数值的示例

层次回归结果显示,社会支持(W)对"工作压力(X)→ 职业倦怠(Y)"路径的调节效应显著,b = −0.24,SE = 0.06,t(246) = −4.03,p < .001,f^2 = .066,为中等效应(Cohen,1988)(Step 2 整体 Delta R^2 = .038,F(1, 246) = 16.24,p < .001)。

Johnson-Neyman技术分析结果显示,当社会支持取值低于 38.47(占样本的 22.4%)时,工作压力对职业倦怠的简单斜率显著为正(b_simple = 0.31,95% CI [0.09, 0.53]),表明在低社会支持群体中,工作压力对职业倦怠具有显著加剧效应。当社会支持取值高于 62.13(占样本的 19.8%)时,工作压力对职业倦怠的简单斜率转为显著负向(b_simple = −0.18,95% CI [−0.34, −0.02]),提示极高社会支持可能产生缓冲乃至反转效应。社会支持取值在 [38.47, 62.13] 区间内(占样本 57.8%)的被试,工作压力对职业倦怠的预测效应未达显著水平(p > .05),见图2(Johnson-Neyman Floodlight图)。

参考文献(APA 7th)

Johnson, P. O., & Neyman, J. (1936). Tests of certain linear hypotheses and
  their application to some educational problems. Statistical Research Memoirs,
  1, 57–93.

Preacher, K. J., Curran, P. J., & Bauer, D. J. (2006). Computational tools for
  probing interactions in multiple linear regression, multilevel modeling, and
  latent curve analysis. Journal of Educational and Behavioral Statistics,
  31(4), 437–448. https://doi.org/10.3102/10769986031004437

Hayes, A. F. (2022). Introduction to mediation, moderation, and conditional
  process analysis: A regression-based approach (3rd ed.). Guilford Press.

七、在 ChatSRS 一句话完成J-N分析

打开 chatsrs.com,上传数据后输入:

"以工作压力为自变量,职业倦怠为因变量,社会支持为调节变量,做含交互项的层次回归。自变量和调节变量均值中心化。交互项显著后,用Johnson-Neyman技术输出调节变量的显著性边界(以色列点),绘制Floodlight图(横轴为社会支持全值域,95%置信带,显著区段阴影标注),报告显著区段的样本覆盖百分比,输出符合APA 7th格式的完整结果段落和参考文献。"

ChatSRS 会自动完成以下操作:

  1. 均值中心化 X 和 W,构建 $X_c \times W_c$ 交互项
  2. 分两步输入层次回归,输出 Delta R^2 和 F 变化量
  3. 用 R 的 interactions 包执行 johnson_neyman(),精确计算 J-N 边界
  4. 绘制出版级 Floodlight 图(可导出 PNG/PDF)
  5. 生成可直接粘贴进论文的 APA 7th 报告段落

如需对三变量(X、W1、W2)的三阶调节做区域显著性分析,可在指令中补充说明,ChatSRS 将自动切换到 Floodlight 三维版本。


八、常见误区与注意事项

误区一:交互项不显著也做J-N

J-N法是对显著交互效应的后续探查(probing),而非独立的显著性检验工具。若交互项 $b_3$ 本身不显著(p > .05),则不应进行 J-N 分析,否则属于数据钓鱼,审稿人会直接质疑。

误区二:J-N边界报整数

J-N边界是数学解,保留两位小数(如 38.47,不要报成 38 或 39)。报告中同时说明该边界对应的测量含义(如"PSSS量表第38.47分,介于题项4和5之间"),帮助读者建立实质理解。

误区三:只报"显著"区段,不报不显著区段

两者都要报告,并说明不显著区段占样本的百分比。这体现了调节效应的边界条件,是 J-N 法最有价值的信息之一。

误区四:误用alpha = .10的临界值

部分软件(如旧版PROCESS)默认 alpha = .05;明确设定 jn=1 时确认所用 t 临界值。如在方法章节说明了 alpha = .05,则 J-N 边界也应基于此水平,不应混用 .10。

误区五:Floodlight图横轴截断

横轴应覆盖调节变量的完整观测范围(从最小值到最大值),不应只显示 ±2SD 的区段,否则读者无法判断显著区段在实际样本中的覆盖情况。


九、J-N法与±1SD简单斜率的配合使用

在大多数投稿场景中,两者可以配合报告,互为补充:

  1. 先报 J-N 法:给出精确显著边界和覆盖百分比——这是主要结论
  2. 辅以±1SD简单斜率:提供具体高/低调节水平的斜率数值和方向感——帮助读者建立直觉

配合报告示例:

为全面探查调节效应,本研究同时采用 Johnson-Neyman技术和±1SD简单斜率分析。J-N法结果(见上文)给出了显著性边界;简单斜率分析进一步显示,在高社会支持(W = M + 1SD = 71.2)处,简单斜率 b = −0.14,t(246) = −2.19,p = .029;在低社会支持(W = M − 1SD = 42.8)处,简单斜率 b = 0.28,t(246) = 3.87,p < .001。两种方法结论一致,高/低社会支持均对应显著斜率,与 J-N 法确定的显著区段吻合。

这种双报告方式在顶刊(如 JPSP、JMFR、AMJ)中越来越常见,既满足严谨性要求,又保持了可读性。


常见FAQ

Q:J-N法是否必须使用PROCESS宏?

A:不必须。PROCESS(Hayes,2022)是最常用的实现路径,但也可以使用 R 的 interactions 包(johnson_neyman() 函数),或在 Stata 中用 margins + marginsplot 命令手动实现。Python 的 pingouin 暂不原生支持 J-N,但可用 statsmodels 手动计算二次方程求解 J-N 点。ChatSRS 调用 R 引擎,完整支持 J-N 法输出。

Q:J-N分析必须对自变量和调节变量做中心化吗?

A:中心化不影响 J-N 边界的统计含义,但会改变边界值的实际单位解读。若不中心化,J-N 点的 W 值是原始量表单位(如总分第X分),解读更直观;若中心化,J-N 点是均值偏差(如均值以上 X 分),需要还原到原始分才能向读者解释。无论哪种方式,只要在方法章节写明即可,审稿人都能接受。

Q:如果J-N分析发现调节变量全值域上效应都显著(没有以色列点),怎么报告?

A:当判别式小于零时,方程无实数根,说明简单斜率在 W 全值域上均显著。报告时直接陈述:"Johnson-Neyman技术分析结果显示,在调节变量的完整观测范围([min, max])内,自变量对因变量的简单斜率均显著(p < .05),即不存在调节效应的非显著区段。" 并附 Floodlight 图(显示置信带始终不包含零)即可。

Q:J-N法适用于多层模型(MLM)或SEM中的调节效应吗?

A:适用,但需要使用专门的扩展版本。对于MLM中的跨层调节(如Level-2变量调节Level-1斜率),Preacher et al.(2006)已推导了 J-N法的多层版本,PROCESS 的最新版本(v4.x)支持MLM中的 J-N 分析。SEM中通过 semTools 或 Mplus 的 LOOP 命令也可实现。ChatSRS 支持 MLM 框架下的跨层 J-N 分析,可在指令中注明"多层模型 + J-N法"。

Q:Floodlight图应该放在正文还是附录?

A:若 J-N 法是研究核心结论之一,Floodlight 图应放正文(结果章节),通常作为"图X"引用。如果 J-N 只是作为简单斜率分析的补充验证,可放附录,正文中注明"见附录图X"。期刊字数限制较严时,可仅在正文报告 J-N 边界数值和覆盖百分比,Floodlight 图作为在线补充材料。


相关阅读


本文首发于 ChatSRS 官方博客。如有问题或反馈,欢迎在 ChatSRS 站内 [用户中心 -> 帮助与反馈] 联系我们。