维护者 | Ben Bolker、Julia Piaskowski、Emi Tanaka、Phillip Alday、Wolfgang Viechtbauer |
联系方式 | bolker at mcmaster.ca |
版本 | 2022-10-31 |
URL | https://CRAN.R-project.org/view=MixedModels |
来源 | https://github.com/cran-task-views/MixedModels/ |
贡献 | 非常欢迎您对本任务视图提出建议和改进,您可以通过 GitHub 上的问题或拉取请求,或通过电子邮件发送给维护者地址。有关更多详细信息,请参阅 贡献指南. |
引用 | Ben Bolker、Julia Piaskowski、Emi Tanaka、Phillip Alday、Wolfgang Viechtbauer (2022)。CRAN 任务视图:R 中的混合、多层和分层模型。版本 2022-10-31。URL https://CRAN.R-project.org/view=MixedModels. |
安装 | 可以使用 ctv 包自动安装此任务视图中的包。例如,ctv::install.views("MixedModels", coreOnly = TRUE) 安装所有核心包,或 ctv::update.views("MixedModels") 安装所有尚未安装和更新的包。有关更多详细信息,请参阅 CRAN 任务视图计划. |
贡献者:维护者加上 Michael Agronah、Matthew Fidler、Thierry Onkelinx
混合(或混合效应)模型是一类广泛的统计模型,用于分析数据,其中观察结果可以先验地分配到离散组,并且描述组间差异的参数被视为随机(或潜在)变量。它们是多层或分层模型的一类;纵向数据通常在这种框架下进行分析。在计量经济学中,纵向或横截面时间序列数据通常被称为面板数据,有时用混合模型拟合。混合模型可以在频率论或贝叶斯框架中拟合。
此任务视图仅包含包含连续(通常虽然不总是高斯)潜在变量的模型。这排除了处理隐马尔可夫模型、潜在马尔可夫模型和有限(离散)混合模型的包(其中一些由 Cluster 任务视图涵盖)。动态线性模型和其他不包含离散分组变量的状态空间模型也被排除在外(其中一些由 TimeSeries 任务视图涵盖)。Bioconductor 上托管的混合模型的生物信息学应用 也被排除在外。
线性混合模型 (LMM) 做出以下假设
频率派
频率派 LMM 最常用的包和/或函数是
nlme::lme()
提供 REML 或 ML 估计。允许多个嵌套随机效应,并提供用于建模异方差和/或相关误差的结构。参数不确定性的 Wald 估计。lmer4::lmer()
提供 REML 或 ML 估计。允许多个嵌套或交叉随机效应,可以计算轮廓置信区间并进行参数引导。贝叶斯
大多数贝叶斯 R 包使用马尔可夫链蒙特卡罗 (MCMC) 估计:MCMCglmm、rstanarm 和 brms;后两个包使用 Stan 基础设施。 blme 基于 lme4,使用最大后验 (MAP) 估计。 bamlss 提供了一套灵活的模块化函数,用于贝叶斯回归建模。
广义线性混合模型 (GLMM) 可以被描述为广义线性模型 (GLM) 的分层扩展,或者作为 LMM 对不同响应分布的扩展,通常在指数族中。随机效应分布通常假定在线性预测器的尺度上是高斯分布。
频率派
MASS::glmmPQL()
通过惩罚拟似然拟合。lme4::glmer()
使用拉普拉斯近似和自适应高斯-厄米特求积;拟合负二项式以及指数族模型。贝叶斯
大多数贝叶斯混合模型包使用某种形式的马尔可夫链蒙特卡罗(或其他蒙特卡罗方法)。
lme4
兼容。以下包(除了 bamlss)通过优化找到贝叶斯 (G)LMM 的最大后验拟合
vglmer 通过变分贝叶斯方法估计 GLMM。
非线性混合模型包含 GLMM 框架无法容纳的任意非线性响应。只有少数包可以容纳广义非线性混合模型(即具有非高斯响应的参数非线性混合模型)。但是,许多包允许平滑的非参数组件(见下文 “加性模型”)。否则,用户可能需要在更通用的 分层建模框架 中自己实现 GNLMM。
频率派
nlme::nlme()
和来自 lme4 的 lmer4::nlmer()
通过最大似然法拟合非线性混合效应模型。nlmixr2::nlmixr2()
通过一阶条件估计 (focei) 最大似然近似 (与 nlme:nlme()
和 lmer4:nlmer()
不同的近似方法) 拟合非线性混合效应模型,并允许广义似然以及一系列内置链接函数。gnlmm()
和 gnlmm3()
通过高斯-埃尔米特积分拟合 GNLMM。贝叶斯
广义估计方程 (GEE) 是拟合聚类、纵向或其他相关数据的另一种方法。这些模型产生对边际效应的估计(在组级变异中平均),而不是条件效应(以组级信息为条件)。
family
从 *ls
/*lss
选项中选择] 都允许对离散度/尺度分量进行建模。family = "scat"
, nlmixr2) 允许重尾响应分布,例如学生-t.coxBox()
和 yeoJohnson()
变换对两侧进行动态变换,并使用最大似然或 EM 方法“saem”拟合偏态数据。corStruct
函数),CARBayesST,sphet,spind,spaMM,glmmfields,glmmTMB,inlabru (通过对数高斯 Cox 过程进行空间点过程),brms,LMMsolver,bamlss;另请参阅 Spatial 和 SpatioTemporal CRAN 任务视图。这些包不直接提供用于拟合混合模型的函数,而是实现与通用采样和优化工具箱的接口,这些工具箱可用于拟合混合模型。虽然模型需要额外的设置工作,并且通常需要使用 R 以外的特定于领域的语言进行编程,但这些框架比这里列出的大多数其他包更灵活。
lme4
拟合的模型)。r.squaredGLMM()
函数), partR2, performance (r2()
函数) (注意,对于 (G)LMMs,计算 R2 值有很多不同的方法:例如,参见 Nakagawa、Johnson 和 Schielzeth (2017)、Jaeger 等人 (2017)。)对数似然函数关于参数的一阶和二阶导数对于各种模型评估任务(例如,计算敏感性、稳健方差-协方差矩阵或 delta 方法方差)很有用。
许多包包含小型示例数据集(例如,lme4, nlme)。这些包提供了之前描述的,通常用于评估混合模型的数据集。
用于方便地以表格和图形方式输出混合模型结果的函数和框架
这些函数提供了方便的框架来拟合和解释混合模型。
lme4::bootMer()
函数),lmeresampler,boot.pval.这些主题密切相关,因为很少有可用的分析方法来计算混合模型的统计功效;功效通常需要通过模拟来估计。
lme4
中的 simulate()
(用于公式参数);rxode2,mrgsolve,PKPDsim(ODE/药代动力学模型)cAIC4::stepcAIC
),buildmer,MuMIn,StatisticalModels (GLMERSelect
).nlmixr2
拟合对象。此拟合对象运行 nlmixr2
中的诊断,并将它们与商业软件中输出的诊断进行比较,以“验证”拟合对象与商业工具的输出。