Questions tagged «mixed-model»

混合(aka多级或分层)模型是线性模型,其中包括固定效应和随机效应。它们用于对纵向或嵌套数据建模。

2
如何使用混合效应模型对交互作用词进行事后比较?
我正在研究一个数据集,以评估干燥对沉积物微生物活动的影响。目的是确定干燥的影响是否随沉积物类型和/或沉积物中深度的变化而变化。 实验设计如下: 第一因子沉积物对应于三种沉积物类型(编码为Sed1,Sed2,Sed3)。对于每种沉积物,在三个地点进行采样(Sed1为3个地点,Sed2为3个地点,Sed3为3个地点)。 网站编码:Site1,Site2,...,Site9。 下一个因素是水文:在每个站点内,在干地和湿地(编码为干/湿)中进行采样。 在每个上一个图中,以两个深度(D1,D2)一式三份进行采样。 总共有n = 108个样本= 3个沉积物* 3个地点* 2个水文学* 2个深度* 3个重复项。 我lme()在R(nlme软件包)中使用该函数,如下所示: Sediment <- as.factor(rep(c("Sed1","Sed2","Sed3"),each=36)) Site <- as.factor(rep(c("Site1","Site2","Site3","Site4","Site5", "Site6","Site7","Site8","Site9"),each=12)) Hydrology <- as.factor(rep(rep(c("Dry","Wet"),each=6),9)) Depth <- as.factor(rep(rep(c("D1","D2"),each=3),18)) Variable <- rnorm(108) mydata <- data.frame(Sediment,Site,Hydrology,Depth,Variable) mod1 <- lme(Variable ~ Sediment*Hydrology*Depth, data=mydata, random=~1|Site/Hydrology/Depth) anova(mod1) 我想进行事后比较,以测试一个术语是否有意义。 我能够做到这一点,以获得简单的主要效果(例如,沉积物): summary(glht(mod1,linfct=mcp(Sediment="Tukey"))) 但是该glht()功能不适用于交互条件。 我发现以下方法可以用于两向方差分析: mod1 <- lme(Variable~Sediment*Hydrology, …

1
使用时变协变量测试纵向混合模型中的同时和滞后效应
最近有人告诉我,如果不为这些协变量引入时滞,就不可能将时变协变量纳入纵向混合模型。您可以确认/否认吗?您对此情况有参考吗? 我提出一个简单的情况来澄清。假设我已经对40个受试者重复测量(说过30次)定量变量(y,x1,x2,x3)。通过问卷在每个受试者中对每个变量进行30次测量。在这里,最终数据将是嵌套在40个主题中的4 800个观察值(4个变量X 30场合X 40个主题)。 我想单独测试(不用于模型比较): 同时(同步)效果:时间t的x1,x2和x3对时间t的y的影响。 滞后效应:在时间t-1时x1,x2和x3对y的影响。 我希望一切都清楚(我不是说英语的人!)。 例如,在R lmer {lme4}中,具有滞后效应的公式为: lmer(y ~ lag1.x1 + lag1.x2 + lag1.x3 + (1|subject)) 其中y,在时间t处的因变量lag1.x1是,在各个级别上的滞后自变量x1,等等。 对于同时效果,公式为: lmer(y ~ x1 + x2 + x3 + (1|subject)) 一切运行良好,它给了我有趣的结果。但是,指定具有同步时变协变量的lmer模型是否正确,还是我错过了一些事情? 编辑: 此外,是否有可能同时测试同时和滞后效应?, 例如 : lmer(y ~ x1 + x2 + x3 + lag1.x1 + lag1.x2 + lag1.x3 …

1
重复测量方差分析:LM vs LMER
我试图重现两者之间lm以及lmer重复测量(2x2x2)之间的几个交互测试。我想比较这两种方法的原因是因为SPSS的重复测量GLM产生的结果与lm此处介绍的方法完全相同,因此最后我想比较SPSS与R-lmer。到目前为止,我仅设法(紧密地)复制了其中的一些交互。 您会在下面找到一个脚本来更好地说明我的观点: library(data.table) library(tidyr) library(lmerTest) library(MASS) set.seed(1) N <- 100 # number of subjects sigma <- 1 # popuplation sd rho <- .6 # correlation between variables # X1: a a a a b b b b # X2: a a b b a a b b # X3: a …

1
手动计算线性混合模型的随机效应预测
我试图手工从线性混合模型中计算随机效应预测,并使用伍德在广义加性模型中提供的表示法:R的简介(pdf的pg 294 / pg 307),我对每个参数的含义感到困惑代表。 以下是伍德的摘要。 定义线性混合模型 ÿ= Xβ+ Zb + ϵY=Xβ+Zb+ϵ Y = X\beta + Zb + \epsilon 其中b N(0,ψ),和ε 〜 N(0,σ 2)〜∼\simψψ\psiε 〜ϵ∼\epsilon \simσ2σ2\sigma^{2} 如果b和y是具有正态分布的随机变量 [by]∼N[[0Xβ],[ψΣybΣbyΣθσ2]][by]∼N[[0Xβ],[ψΣbyΣybΣθσ2]]\begin{align*} \begin{bmatrix} b\\ y \end{bmatrix} &\sim N \begin{bmatrix} \begin{bmatrix} 0\\ X\beta \end{bmatrix}\!\!,& \begin{bmatrix} \psi & \Sigma_{by} \\ \Sigma_{yb}& \Sigma_{\theta}\sigma^{2} \end{bmatrix} \end{bmatrix}\\ \end{align*} 可再生能源的预测是通过 …

2
如何模拟数据以证明与R(lme4)的混合效果?
作为这篇文章的对应内容,我致力于模拟具有连续变量的数据,使它们适合于相关的截距和斜率。 虽然有关于这一主题伟大的职位在网站上,并在现场之外,我在跨开始到结束例如即将与并联一个简单的,现实生活中的情景模拟数据有困难。 因此,问题是如何模拟这些数据,并使用进行“测试” lmer。对于许多人而言,这并不是什么新鲜事物,但对于其他许多试图了解混合模型的人来说,却可能有用。

1
混合效果模型的模型矩阵
在lmer函数内lme4的R存在是构建随机效应,模型矩阵的呼叫,作为解释在这里,7页- 9。ZZZ 计算需要两个矩阵和 KhatriRao和/或Kronecker积。 ZZZJiJiJ_iXiXiX_i 矩阵是一个的:“分组因子索引的指标矩阵”,但是它似乎是带有伪编码的稀疏矩阵,用于选择对应于较高层次级别的哪个单元(例如,重复测量的主题)在“任何观察。所述矩阵似乎作为在较低层级测量的选择器,以便两个“选择器”的组合将产生一矩阵,通过下面的例子中的纸张所示的形式的:JiJiJ_iXiXiX_iZiZiZ_i (f<-gl(3,2)) [1] 1 1 2 2 3 3 Levels: 1 2 3 (Ji<-t(as(f,Class="sparseMatrix"))) 6 x 3 sparse Matrix of class "dgCMatrix" 1 2 3 [1,] 1 . . [2,] 1 . . [3,] . 1 . [4,] . 1 . [5,] . . 1 …

1
在multcomp :: glht中对具有交互作用的混合效应模型(lme4)进行事后测试
我正在R(lme4包)中的线性混合效应模型上执行事后测试。我正在使用multcomp包(glht()函数)执行事后测试。 我的实验设计是重复测量,具有随机阻塞效应。这些模型被指定为: mymod <- lmer(variable ~ treatment * time + (1|block), data = mydata, REML = TRUE) 而不是在这里附上我的数据,我叫了数据的工作过warpbreaks的内multcomp包装。 data <- warpbreaks warpbreaks$rand <- NA 我添加了一个额外的随机变量来模拟我的“阻止”效果: warpbreaks$rand <- rep(c("foo", "bar", "bee"), nrow(warpbreaks)/3) 这模仿了我的模型: mod <- lmer(breaks ~ tension * wool + (1|rand), data = warpbreaks) 我知道“ 其他Multcomp示例-2 Way Anova”中的示例。该示例使您可以比较的张力水平wool。 如果我想做相反的事情-比较wool内的水平tension怎么办?(在我的情况下,这将是在时间水平(三至六月,七月,八月)内比较治疗水平(二至零,一)。 我已经提出了以下代码来执行此操作,但是它似乎不起作用(请参见下面的错误消息)。 …

1
比较混合效应模型和固定效应模型(测试随机效应的显着性)
给定三个变量y和x,它们是正连续的,而和z是分类的,我有两个候选模型,分别为: fit.me <- lmer( y ~ 1 + x + ( 1 + x | factor(z) ) ) 和 fit.fe <- lm( y ~ 1 + x ) 我希望比较这些模型,以确定哪种模型更合适。在我看来,从某种意义上讲,它fit.fe是嵌套的fit.me。通常,当这种一般情况成立时,可以执行卡方检验。在中R,我们可以使用以下命令执行此测试, anova(fit.fe,fit.me) 当两个模型包含随机效应(通过生成lmer从所述lme4包),则anova()命令工作正常。由于边界参数的存在,通常建议通过仿真测试所得的卡方统计量,尽管如此,我们仍可以在仿真过程中使用该统计量。 当两个模型都只包含固定效果时,此方法(以及相关的anova()命令)可以正常工作。 但是,当一个模型包含随机效应而精简模型仅包含固定效应时,如上述情况一样,该anova()命令将不起作用。 更具体地说,出现以下错误: > anova(fit.fe, fit.me) Error: $ operator not defined for this S4 class 从上方使用Chi-Square方法(模拟)有什么问题吗?还是这仅仅是anova()不知道如何处理由不同函数生成的线性模型的问题? 换句话说,手动生成从模型得出的卡方统计量是否合适?如果是这样,比较这些模型的适当自由度是多少?据我估计: F=((SSEreduced−SSEfull)/(p−k))((SSEfull)/(n−p−1))∼Fp−k,n−p−1F=((SSEreduced−SSEfull)/(p−k))((SSEfull)/(n−p−1))∼Fp−k,n−p−1 F …

2
线性混合模型中方差的残差诊断和均质性
在问这个问题之前,我确实搜索了我们的网站并发现了很多类似的问题(例如here,here和here)。但是我觉得这些相关问题没有得到很好的回答或讨论,因此想再次提出这个问题。我觉得应该有很多观众希望对这些问题进行更清晰的解释。 对于我的问题,首先考虑线性混合效果模型y=Xβ+Zγ+ϵy=Xβ+Zγ+ϵ \mathbf{y = X\boldsymbol \beta + Z \boldsymbol \gamma + \boldsymbol \epsilon} 其中XβXβX\boldsymbol \beta是线性固定效果分量,ZZ\mathbf{Z}是对应的所述附加设计矩阵随机效应参数,γγ\boldsymbol \gamma。而ϵ ∼ N(0,σ2I)ϵ ∼ N(0,σ2I)\boldsymbol \epsilon \ \sim \ N(\mathbf{0, \sigma^2 I})是通常的误差项。 让我们假设唯一的固定影响因子是3个不同级别的分类变量Treatment。唯一的随机影响因素是变量Subject。也就是说,我们有一个具有固定治疗效果和随机受试者效应的混合效应模型。 因此,我的问题是: 线性混合模型设置中是否存在与传统线性回归模型类似的方差假设的同质性?如果是这样,那么在上述线性混合模型问题的背景下,假设的具体含义是什么?还有哪些其他重要假设需要评估? 我的想法:是的。假设(我的均值,零误差均值和均方差)仍来自此处:ϵ ∼ N(0,σ2I)ϵ ∼ N(0,σ2I)\boldsymbol \epsilon \ \sim \ N(\mathbf{0, \sigma^2 I})。在传统的线性回归模型设置中,我们可以说假设是“误差的方差(或只是因变量的方差)在所有3个治疗水平上都是恒定的”。但是我不知道如何在混合模型设置下解释这个假设。我们应该说:“在3种治疗水平上,方差是恒定的吗?是否取决于受试者?” 有关残差和影响诊断的SAS在线文档提出了两种不同的残留物,即边际残差,和有条件的残差, 我的问题是,两个残差分别用于什么?我们如何使用它们来检查同质性假设?对我而言,只有边际残差可用于解决同质性问题,因为它对应于模型的。我的理解对吗?rm=Y−Xβ^rm=Y−Xβ^ \mathbf{r_m = Y - X \hat{\boldsymbol …

1
随机斜率混合模型的类内相关系数
我为参与者()和项目()m_plot配备了以下lme4::lmer带有交叉随机效应的模型:lfdncontent Random effects: Groups Name Variance Std.Dev. Corr lfdn (Intercept) 172.173 13.121 role1 62.351 7.896 0.03 inference1 24.640 4.964 0.08 -0.30 inference2 52.366 7.236 -0.05 0.17 -0.83 inference3 21.295 4.615 -0.03 0.22 0.86 -0.77 content (Intercept) 23.872 4.886 role1 2.497 1.580 -1.00 inference1 18.929 4.351 0.52 -0.52 inference2 14.716 3.836 …

2
lmerTest :: anova中的自由度正确吗?它们与RM-ANOVA有很大不同
我正在分析R中反应时间实验的结果。 我进行了重复测量方差分析(1个受试者内部因素具有2个水平,而1个受试者之间因素具有2个水平)。我运行了一个类似的线性混合模型,我想使用ANOVA表的形式总结lmer结果lmerTest::anova。 不要误会我的意思:我没想到会有相同的结果,但是我不确定lmerTest::anova结果的自由度。在我看来,它反映的是ANOVA,而在主题级别上没有任何汇总。 我知道以下事实:在混合效应模型中计算自由度是很棘手的,但lmerTest::anova在更新的?pvalues主题(lme4包)中被提及为一种可能的解决方案。 这个计算正确吗?结果lmerTest::anova是否正确反映了指定的模型? 更新:我使个体差异更大。自由度lmerTest::anova与简单的方差不同,但是我仍然不确定,为什么它们对于主体内因素/相互作用如此之大。 # mini example with ANT dataset from ez package library(ez); library(lme4); library(lmerTest) # repeated measures ANOVA with ez package data(ANT) ANT.2 <- subset(ANT, !error) # update: make individual differences larger baseline.shift <- rnorm(length(unique(ANT.2$subnum)), 0, 50) ANT.2$rt <- ANT.2$rt + baseline.shift[as.numeric(ANT.2$subnum)] anova.ez <- ezANOVA(data = …

4
混合模型思想与贝叶斯方法
在混合模型中,我们假设随机效应(参数)是遵循正态分布的随机变量。它看起来与贝叶斯方法非常相似,在贝叶斯方法中,所有参数均假定为随机参数。 那么随机效应模型是贝叶斯方法的特例吗?

2
添加随机效应影响系数估计
我一直被教导随机效应只会影响方差(误差),而固定效应只会影响均值。但是我发现了一个例子,其中随机效应也会影响均值-系数估计: require(nlme) set.seed(128) n <- 100 k <- 5 cat <- as.factor(rep(1:k, each = n)) cat_i <- 1:k # intercept per kategorie x <- rep(1:n, k) sigma <- 0.2 alpha <- 0.001 y <- cat_i[cat] + alpha * x + rnorm(n*k, 0, sigma) plot(x, y) # simulate missing data y[c(1:(n/2), …

2
从混合模型进行预测时,为什么难以将不确定性纳入随机效应中?
R-sig-ME上有多个线程可以获取有关使用lme4和nlme在R中进行预测的置信区间的信息。例如,在2010年的此处和此处,包括这两个软件包的作者之一Dougals Bates的一些评论。我不愿逐字逐句地引用他,因为担心他们会脱离上下文,但无论如何,他的一句话是 “您在预测中结合了参数和随机变量,我不确定评估那些预测的变异性意味着什么。贝叶斯方法可能能够理解这一点,但我无法理解。 ” https://stat.ethz.ch/pipermail/r-sig-mixed-models/2010q1/003447.html 我知道贝叶斯glmm软件包MCMCglmm可以产生可靠的预测间隔。 最近,lme4已经为github上的开发版本提供了一种predict方法,但它附带以下注释: “ @note没有选择来计算预测的标准误差,因为很难定义一种将方差参数中包含不确定性的有效方法;对于此任务,我们建议使用\ code {\ link {bootMer}}。” https://github.com/lme4/lme4/blob/master/R/predict.R 那么,为什么在频繁的情况下根据混合模型进行预测时,很难将不确定性纳入随机效应中呢?

1
如何在ARIMA模型的观察值48中加入创新的离群值?
我正在处理数据集。使用一些模型识别技术后,我得出了一个ARIMA(0,2,1)模型。 我使用R detectIO包TSA中的函数在对原始数据集进行第48次观察时检测到创新的离群值(IO)。 如何将这个离群值合并到模型中,以便将其用于预测?我不想使用ARIMAX模型,因为我可能无法根据R中的模型做出任何预测。还有其他方法可以做到吗? 以下是我的价值观: VALUE <- scan() 4.6 4.5 4.4 4.5 4.4 4.6 4.7 4.6 4.7 4.7 4.7 5.0 5.0 4.9 5.1 5.0 5.4 5.6 5.8 6.1 6.1 6.5 6.8 7.3 7.8 8.3 8.7 9.0 9.4 9.5 9.5 9.6 9.8 10.0 9.9 9.9 9.8 9.8 9.9 9.9 9.6 9.4 …
10 r  time-series  arima  outliers  hypergeometric  fishers-exact  r  time-series  intraclass-correlation  r  logistic  glmm  clogit  mixed-model  spss  repeated-measures  ancova  machine-learning  python  scikit-learn  distributions  data-transformation  stochastic-processes  web  standard-deviation  r  machine-learning  spatial  similarities  spatio-temporal  binomial  sparse  poisson-process  r  regression  nonparametric  r  regression  logistic  simulation  power-analysis  r  svm  random-forest  anova  repeated-measures  manova  regression  statistical-significance  cross-validation  group-differences  model-comparison  r  spatial  model-evaluation  parallel-computing  generalized-least-squares  r  stata  fitting  mixture  hypothesis-testing  categorical-data  hypothesis-testing  anova  statistical-significance  repeated-measures  likert  wilcoxon-mann-whitney  boxplot  statistical-significance  confidence-interval  forecasting  prediction-interval  regression  categorical-data  stata  least-squares  experiment-design  skewness  reliability  cronbachs-alpha  r  regression  splines  maximum-likelihood  modeling  likelihood-ratio  profile-likelihood  nested-models 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.