You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JMP与R回归截距及结果差异原因,如何在JMP复现R结果?

截距差异原因及JMP复现方法

差异核心原因:因子编码方式不同

R和JMP默认采用了不同的因子编码规则,导致截距含义和数值出现差异:

  • R默认:虚拟编码(Dummy Coding):将因子的第一个水平设为参考组,模型截距代表「所有因子都取参考水平时的响应均值」。你的代码里time参考水平是Pre,treatment参考水平是Control,所以截距就是Pre+Control组的响应均值(1.016379),和该组样本均值一致。
  • JMP默认:效应编码(Effect Coding):截距代表所有组的总响应均值,也就是四个组(Pre-Control、Pre-Treatment、Post-Control、Post-Treatment)的响应平均值,计算下来约为1.54,和你得到的JMP结果匹配。JASP里的H0/H1结果差异,本质也是这两种编码方式的切换。

在JMP中复现R的回归结果

要得到和R一致的输出,需要把JMP的因子编码改为虚拟编码(JMP中称为「指示变量编码」),步骤如下:

  1. 打开Fit Model窗口,将time、treatment以及两者的交互项选入模型效应列表
  2. 分别点击time和treatment因子旁的红色三角菜单,选择「Estimates」→「Indicator Coding」
  3. 确认参考水平:确保time的参考组是Pre,treatment的参考组是Control(JMP默认会以因子的第一个水平为参考,和你的R代码设置一致,无需额外调整)
  4. 点击「Run」重新拟合模型,即可得到和R完全一致的截距及系数结果

内容的提问来源于stack exchange,提问作者Andrzej Andrzej

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 08:43:34