mmrm 
重复测量混合模型(MMRM)是分析随机临床试验及其他场景中纵向连续结局的热门选择;请参阅 Cnaan, Laird and Slasor (1997) 获取教程,以及 Mallinckrodt, Lane and Schnell (2008) 获取综述。本包基于边际线性模型(不含随机效应)实现 MMRM,并使用 Template Model Builder (TMB),从而实现快速且稳健的模型拟合。用户可以指定多种协方差矩阵、对观测值加权、使用受限或标准最大似然推断拟合模型、使用 Satterthwaite 或 Kenward-Roger 校正进行假设检验,并通过使用 emmeans 提取最小二乘均值估计。
范围:
- 具有正态(但可能存在异方差)残差的连续响应。
- 边际线性模型(无个体水平随机效应)。
主要功能:
- 灵活的协方差结构指定:
- 结构: 非结构化、Toeplitz、AR1、复合对称、前向依赖以及空间指数。
- 组:所有受试者共享协方差结构或 组特定的协方差估计。
- 方差:各时间点同质或异质。
- 推断:
- 支持 REML 和 ML。
- 支持权重。
- 假设检验:
- 最小二乘
均值:
可通过
emmeans包获得 - 可检验模型参数的一维和多维线性对比。
- Satterthwaite 调整自由度。
- Kenward-Roger 调整自由度和系数协方差矩阵。
- 系数 协方差
- 最小二乘
均值:
可通过
C++后端:- 使用
C++和自动微分进行快速实现, 以获取模型拟合的精确梯度信息。 - 模型拟合算法
详情
用于
mmrm。
- 使用
- 包生态系统集成:
- 与 tidymodels 包 生态系统集成
- 与 tern
包生态系统集成
- tern.mmrm
包可用于运行
mmrm拟合并生成每次访视和治疗组的最小二乘均值的表格 和图,模型诊断的表格,诊断图以及其他 标准模型输出。
- tern.mmrm
包可用于运行
安装
发布版
您可以使用以下命令从 CRAN 安装当前发布版本:
install.packages("mmrm")
开发
你可以使用以下命令从 R-Universe 安装当前的开发版本:
install.packages(
"mmrm",
repos = c("https://openpharma.r-universe.dev", "https://cloud.r-project.org")
)
这更受推荐,因为对于 Windows 和 MacOS 系统,您可以安装 预编译的二进制版本包,从而避免 编译的需要。
或者,您可以使用以下命令从 GitHub 安装当前开发版本:
if (!require("remotes")) {
install.packages("remotes")
}
remotes::install_github("openpharma/mmrm")
请注意,从源代码安装可能需要大量时间,因为需要编译 C++ 源代码。
入门指南
另请参阅入门 vignette 或通过尝试示例开始:
library(mmrm)
fit <- mmrm(
formula = FEV1 ~ RACE + SEX + ARMCD * AVISIT + us(AVISIT | USUBJID),
data = fev_data
)
该代码指定了一个具有给定协变量的 MMRM,以及时间点(在临床试验背景下也称为访视,此处由 AVISIT 给出)在受试者内部(此处为
USUBJID)的非结构化协方差矩阵。虽然默认情况下使用受限最大似然
(REML),但也可以使用 ML,参见 ?mmrm。
打印该对象将显示输出,这对于任何使用过流行建模函数(如
stats::lm()、stats::glm()、glmmTMB::glmmTMB() 和
lme4::nlmer())的人来说应该都很熟悉。从该打印输出中,我们可以看到函数调用、
使用的数据、具有方差参数数量的协方差结构,
以及似然方法和实现的模型偏差。此外,
用户还会获得估计系数和模型收敛信息的打印输出:
fit
#> mmrm fit
#>
#> Formula: FEV1 ~ RACE + SEX + ARMCD * AVISIT + us(AVISIT | USUBJID)
#> Data: fev_data (used 537 observations from 197 subjects with maximum 4
#> timepoints)
#> Covariance: unstructured (10 variance parameters)
#> Inference: REML
#> Deviance: 3386.45
#>
#> Coefficients:
#> (Intercept) RACEBlack or African American
#> 30.77747548 1.53049977
#> RACEWhite SEXFemale
#> 5.64356535 0.32606192
#> ARMCDTRT AVISITVIS2
#> 3.77423004 4.83958845
#> AVISITVIS3 AVISITVIS4
#> 10.34211288 15.05389826
#> ARMCDTRT:AVISITVIS2 ARMCDTRT:AVISITVIS3
#> -0.04192625 -0.69368537
#> ARMCDTRT:AVISITVIS4
#> 0.62422703
#>
#> Model Inference Optimization:
#> Converged with code 0 and message: convergence: rel_reduction_of_f <= factr*epsmch
summary() 方法随后提供了带有 Satterthwaite 自由度的系数表以及协方差矩阵估计:
summary(fit)
#> mmrm fit
#>
#> Formula: FEV1 ~ RACE + SEX + ARMCD * AVISIT + us(AVISIT | USUBJID)
#> Data: fev_data (used 537 observations from 197 subjects with maximum 4
#> timepoints)
#> Covariance: unstructured (10 variance parameters)
#> Method: Satterthwaite
#> Vcov Method: Asymptotic
#> Inference: REML
#>
#> Model selection criteria:
#> AIC BIC logLik deviance
#> 3406.4 3439.3 -1693.2 3386.4
#>
#> Coefficients:
#> Estimate Std. Error df t value Pr(>|t|)
#> (Intercept) 30.77748 0.88656 218.80000 34.715 < 2e-16
#> RACEBlack or African American 1.53050 0.62448 168.67000 2.451 0.015272
#> RACEWhite 5.64357 0.66561 157.14000 8.479 1.56e-14
#> SEXFemale 0.32606 0.53195 166.13000 0.613 0.540744
#> ARMCDTRT 3.77423 1.07415 145.55000 3.514 0.000589
#> AVISITVIS2 4.83959 0.80172 143.88000 6.037 1.27e-08
#> AVISITVIS3 10.34211 0.82269 155.56000 12.571 < 2e-16
#> AVISITVIS4 15.05390 1.31281 138.47000 11.467 < 2e-16
#> ARMCDTRT:AVISITVIS2 -0.04193 1.12932 138.56000 -0.037 0.970439
#> ARMCDTRT:AVISITVIS3 -0.69369 1.18765 158.17000 -0.584 0.559996
#> ARMCDTRT:AVISITVIS4 0.62423 1.85085 129.72000 0.337 0.736463
#>
#> (Intercept) ***
#> RACEBlack or African American *
#> RACEWhite ***
#> SEXFemale
#> ARMCDTRT ***
#> AVISITVIS2 ***
#> AVISITVIS3 ***
#> AVISITVIS4 ***
#> ARMCDTRT:AVISITVIS2
#> ARMCDTRT:AVISITVIS3
#> ARMCDTRT:AVISITVIS4
#> ---
#> Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#>
#> Covariance estimate:
#> VIS1 VIS2 VIS3 VIS4
#> VIS1 40.5537 14.3960 4.9747 13.3867
#> VIS2 14.3960 26.5715 2.7855 7.4745
#> VIS3 4.9747 2.7855 14.8979 0.9082
#> VIS4 13.3867 7.4745 0.9082 95.5568
引用 mmrm
要引用 mmrm 请参见
此处。