跳到主要内容
临床统计方法速查站
方法分类

Tipping-point 敏感性分析 Tipping-Point Sensitivity Analysis (Tipping Point)

对试验组缺失连续结局施加一系列 MNAR delta shift,寻找主结论首次翻转所需的缺失值偏离程度。

统计原理

先在 MAR 下为缺失的目标访视值生成预测值 Yi,MAR(m)Y_{i,\text{MAR}}^{(m)},再只对指定治疗组的缺失值施加 shift:

Yi,δ(m)=Yi,MAR(m)+δ,i∈{Drug A 且 AVAL 缺失}.Y_{i,\delta}^{(m)}=Y_{i,\text{MAR}}^{(m)}+\delta, \qquad i\in\{\text{Drug A 且 AVAL 缺失}\}.

本页终点数值越大越好,所以 δ<0\delta<0 表示假设 Drug A 的未观察结局比 MAR 预测更差。对每个 δ\delta 都重新生成多套数据、拟合相同 ANCOVA 并按 Rubin 规则合并,得到治疗差 θ^(δ)\hat\theta(\delta)、95% CI 和 p 值。

3 个 SAS 实跑节点 · 不插值 沿 δ 施压,寻找结论第一次翻转

δ 只加到 Drug A 缺失值。圆点是治疗差,竖线是 95% CI;CI 触及 0 才按本页判据翻转。

预设扫描 0 至 −8
↔ 小屏可横向滑动;键盘聚焦后用左右方向键 缺失值偏移量与治疗差置信区间 偏移量 0、负 4 和负 8 的置信区间均未包含 0,因此预设范围内没有临界点。 3.41 4.48 5.54
治疗差 θ̂(δ) 95% CI 虚线仅连接实跑节点

“临界点”是预设结论第一次翻转的 shift,例如两侧 p 值首次达到 0.05 或 95% CI 首次包含 0。它回答的是:Drug A 缺失者必须比 MAR 预测差多少,主结论才不再成立? 临界 shift 是否临床可信,必须结合量表范围、已观测变化及停药原因解释。

什么时候用

主分析依赖 MAR,而方案要求在 MNAR 假设下检验结论稳健性时使用。最常见场景是连续终点有差异性缺失,针对试验组或各组缺失者施加 delta adjustment。

SAP 里长这样:

A tipping-point sensitivity analysis will be performed. Following multiple imputation under MAR, a shift parameter from 0 to -8 points will be applied to imputed Week 8 values for missing subjects in the Drug A group. The ANCOVA model will be repeated at each shift, and the shift at which the treatment conclusion is reversed will be reported.

必须明确:修改哪一组、只改缺失值还是全部值、shift 正负方向、网格、插补模型、分析模型和“翻转”的判据。

适用条件速查卡

项条件
本页终点连续 AVAL,数值越大越好
基准假设条件于 TRTAN 与 BASE 的 MAR 多重插补
MNAR 偏离仅 Drug A 缺失 AVAL 加 shift
网格0, -1, …, -8;程序计算后按 0 到 −8 展示
对照组缺失保持 MAR,不加 shift
分析模型每套数据 AVAL = TRTAN + BASE
翻转判据预设两侧 p≥0.05 或 95% CI 包含 0;不能分析后改口径

核心 SAS 代码

%macro tipping(data=adeff, smin=-8, smax=0, sinc=1);
  %local ncase j shift;
  %let ncase=%sysfunc(floor(%sysevalf((&smax-&smin)/&sinc)));

  ods select none;
  %do j=0 %to &ncase;
    %let shift=%sysevalf(&smin+&j*&sinc);

    proc mi data=&data seed=14823 nimpute=25 out=outmi;
      class trtan;
      monotone reg;
      mnar adjust(aval / shift=&shift adjustobs=(trtan='1'));
      var trtan base aval;
    run;

    proc reg data=outmi;
      model aval=trtan base;
      by _imputation_;
      ods output ParameterEstimates=regparm;
    run;

    /* 本例完整数据 n=30,ANCOVA 含截距、TRTAN、BASE 共 3 个参数:EDF=30-3=27 */
    proc mianalyze parms=regparm edf=27;
      modeleffects trtan;
      ods output ParameterEstimates=miparm;
    run;

    data miparm;
      set miparm;
      shift=&shift;
    run;
    /* 完整下载程序把每次 MIPARM 依次累积为 TIP_RESULTS。 */
  %end;
  ods select all;
%mend;
  • ADJUSTOBS=(TRTAN='1') 把偏移限定在 Drug A 且被插补的 AVAL;已观察 AVAL 不会被修改。
  • 每个 shift 都从同一 seed 重新插补,使网格间随机噪声尽量可比;正式分析仍应设置足够插补次数。
  • MODELEFFECTS TRTAN 只合并治疗系数,形成每个 shift 的治疗差、CI 和 p 值。
  • EDF=27 是本例完整数据模型的残差自由度:30 名受试者减去截距、治疗和基线 3 个回归参数。正式模板必须根据该分析的有效样本量与满秩模型参数数目派生并验证,不能照抄 27;若不提供 EDF=,SAS 默认不执行完整数据自由度的小样本调整。

变量解释表

变量含义典型来源
USUBJID受试者唯一标识ADSL.USUBJID
TRT01P治疗显示标签ADSL.TRT01P
TRTANDrug A=1,Placebo=0;也是偏移选择条件ADSL.TRT01PN
BASE完整基线值ADEFF.BASE
AVAL目标访视值,部分缺失ADEFF.AVAL
SHIFT只加到 Drug A 缺失 AVAL 的 delta敏感性分析网格
PROBT每个 shift 下 Rubin 合并治疗效应的两侧 p 值PROC MIANALYZE

输出对照

本页 9 个 shift 已在 SAS 9.4 TS1M8 / SAS/STAT 15.3 实跑。正式结果应保留完整网格,而不是只报最有利或最不利的一点;下表展示关键节点。

SHIFTESTIMATE95% CIPROBT
05.5448(5.2788, 5.8109)<.0001
−44.4782(3.4916, 5.4647)<.0001
−83.4115(1.4885, 5.3345)0.0012

SHIFT 映射 Drug A 缺失值相对 MAR 的假设偏移;ESTIMATE 与 CI 映射治疗差;PROBT 映射 H0:θ=0H_0:\theta=0 的两侧 p-value。本例扫描至 −8 仍未翻转,因此结论是“在预设范围内未达到临界点”,不是外推为任何 MNAR 情形下都稳健。

按 SHIFT=0,-1,…,-8 展示,在第一行 PROBT≥0.05(或 CI 首次包含 0,依 SAP)处标记 tipping point。若扫描至 −8 仍未翻转,应写“在预设范围内未达到临界点”,不能外推为永远稳健。

示例数据与程序

  • example.csv — 30 例、Drug A 缺失较多的原创连续终点数据
  • example.sas — 9 个 shift 的 MI、ANCOVA、Rubin 合并和汇总完整程序

常见坑

Tipping point 是假设压力测试,不是调参工具

  • shift 方向写反:本页越大越好,所以负 shift 才是对 Drug A 不利;越小越好的终点要重新定义。
  • 把 shift 加到所有人:delta adjustment 通常只作用于被插补的指定记录,不能改动已观察数据。
  • 只扫到刚好显著:网格、步长和停止规则应预设,并展示结论两侧的邻近点。
  • 混淆 estimand:插补对象与 intercurrent event 策略不一致时,漂亮的临界图也回答错问题。
  • 只报 p 值:临床解释需要 shift 的量纲、治疗差和 CI;“需要差 6 分才翻转”才可与量表意义比较。
  • 遗漏完整数据自由度:PROC MIANALYZE 的默认大样本推断不会自动使用 ANCOVA 残差自由度;小样本下会使 CI、p 值及 tipping 临界点发生变化。
  • 把未翻转说成证明 MAR:结果只说明对已扫描的 MNAR 偏离稳健,不会验证真实缺失机制。

SAS 实现依据:PROC MIANALYZE Tipping-Point 官方示例 与 EDF= 官方说明。敏感性分析边界依据:ICH E9(R1) 与 EMA Missing Data Guideline。

相关方法

  • 重复测量混合模型 联合分析多个访视的连续终点,建模受试者内相关性并估计目标访视的组间差。
  • 多重插补 在明确缺失机制和插补模型后生成多套完整数据,逐套执行同一分析,再用 Rubin 规则合并估计和不确定性。