重复测量混合模型 Mixed Model for Repeated Measures (MMRM)
联合分析多个访视的连续终点,建模受试者内相关性并估计目标访视的组间差。
统计原理
对受试者 的多访视向量,可写为:
描述治疗、访视、交互和基线效应; 描述同一受试者各访视的相关性。UN 结构为每个访视方差和每对访视协方差分别估参。MMRM 不会“填补”缺失值,而是基于观测似然在 MAR 假设下估计模型。
模型同时利用各访视记录,并描述同一受试者内的相关性。
什么时候用
连续型疗效终点在多个访视重复测量,主分析需要利用全部计划访视信息并估计目标访视的治疗差时使用 MMRM。它显式建模同一受试者内观测的相关性,并在缺失随机(MAR)假设下使用可用观测。
SAP 里长这样:
Change from baseline through Week 8 will be analyzed using a mixed model for repeated measures (MMRM) with treatment, visit, treatment-by-visit interaction, baseline-by-visit interaction, and pooled site as fixed effects. An unstructured covariance matrix and Kenward-Roger degrees of freedom will be used. The LS mean difference at Week 8 and its 95% confidence interval will be presented.
看到 mixed model for repeated measures / unstructured covariance / treatment-by-visit / Kenward-Roger,即可定位到本页。
适用条件速查卡
| 项 | 条件 |
|---|---|
| 终点类型 | 多访视重复测量的连续型终点 |
| 数据结构 | 每名受试者每个分析访视至多一条记录 |
| 分析数据范围 | 示例限定 PARAMCD='HAMD17'、ANL01FL='Y',保留 Week 2/4/8 全部可用记录 |
| 主要假设 | 均值模型正确;协方差结构合理;缺失机制可按 MAR 解释 |
| 不适用时 | 只有单一目标访视 → ANCOVA;MNAR 敏感性问题 → MI/Tipping Point 等预设分析 |
核心 SAS 代码
proc import datafile="example.csv" out=adeff_raw dbms=csv replace;
guessingrows=max;
run;
data adeff;
set adeff_raw;
where paramcd='HAMD17' and anl01fl='Y' and avisitn in (2, 4, 8);
run;
proc sort data=adeff;
by usubjid avisitn;
run;
proc mixed data=adeff method=reml order=data;
class usubjid trt01p avisit (ref='Week 8') sitegr1;
model chg = trt01p avisit trt01p*avisit base base*avisit sitegr1
/ ddfm=kr;
repeated avisit / subject=usubjid type=un;
lsmeans trt01p*avisit / diff cl slice=avisit;
run;
ORDER=DATA配合按AVISITN排序,使重复测量顺序与计划访视一致。TYPE=UN对访视间方差和协方差限制最少,但参数较多;不收敛时只能按 SAP 的预设降级序列处理。BASE与BASE*AVISIT允许各访视有不同基线斜率;具体参数化必须与 SAP 一致。SLICE=AVISIT帮助定位每个访视内的治疗比较,主表只取预设目标访视。
变量解释表
| 变量 | 含义 | 典型来源 |
|---|---|---|
| USUBJID | 受试者唯一标识,也是重复测量 subject | ADSL.USUBJID |
| TRT01P | 计划治疗组 | ADSL.TRT01P |
| PARAMCD | 分析参数代码 | ADEFF.PARAMCD |
| AVISIT / AVISITN | 分析访视及其数值顺序 | ADEFF |
| BASE | 基线值 | ADEFF.BASE |
| CHG | 各访视较基线变化 | ADEFF.CHG |
| SITEGR1 | 合并中心 | ADSL.SITEGR1 |
| ANL01FL | 主分析记录标志 | ADEFF.ANL01FL |
输出对照
以下为字段定位,不预填未经 SAS 9.4 核验的数值。
| SAS 输出 | 编号 | 对应 shell |
|---|---|---|
| Fit Statistics / Convergence Status | ① | 模型与协方差结构 QC 证据,不直接填主表 |
| Least Squares Means 中 Week 8 各组 Estimate | ② | 目标访视各组 LS Mean |
| 同表 Standard Error | ③ | 各组 SE |
| Differences 中 Week 8 的 Estimate | ④ | 目标访视组间差 |
| Lower / Upper | ⑤ | 组间差 95% CI |
| DF / t Value / Pr > |t| | ⑥ / ⑦ / ⑧ | KR 自由度、检验统计量和 p-value |
典型纵向疗效 shell 的 Week 8 行填写 ② (③);治疗组与 Placebo 的差值行填写 ④ (⑤) 和 ⑧。先用 ① 确认正式模型收敛,再读取目标访视而不是其他 visit 的行。
示例数据与程序
- example.csv — 12 例、3 个访视且含缺失访视的原创模拟纵向数据
- example.sas — 数据限定、排序、UN 协方差 MMRM 和访视内比较程序
常见坑
常见坑
- 重复记录未去重:同一 USUBJID/AVISIT 多条分析记录会改变权重并破坏协方差结构。
- 访视顺序错误:字符排序可能把 Week 10 放在 Week 2 前,须用 AVISITN 固定顺序。
- UN 不收敛就临时换结构:降级结构和选择准则必须预先写入 SAP,并保留收敛证据。
- 把 MAR 当成已证明:MMRM 仍依赖缺失机制假设;MNAR 风险需按方案做敏感性分析。
相关方法
- 协方差分析 校正基线值后的组间连续终点比较,输出 LS Mean 及组间差(95% CI)。