Questions tagged «lme4-nlme»

lme4和nlme是用于拟合线性,广义线性和非线性混合效果模型的R包。对于有关混合模型的一般问题,请使用[mixed-model]标签。

4
解释glmer中的随机效应方差
我正在修订有关授粉的论文,其中数据按二项分布(水果成熟或没有成熟)。因此,我使用glmer了一种随机效果(单个植物)和一种固定效果(治疗)。审稿人想知道植物是否对坐果有影响-但我在解释glmer结果时遇到困难。 我已经在网络上阅读过,似乎直接比较glm和glmer模型可能存在问题,所以我没有这样做。我认为回答这个问题的最直接方法是将随机效应方差(下面的1.449)与总方差进行比较,或者将处理结果解释为方差。但是,如何计算这些其他方差?它们似乎未包含在下面的输出中。我读到一些关于二项式不包括残差的信息glmer-我如何解释随机效应的相对重要性? > summary(exclusionM_stem) Generalized linear mixed model fit by maximum likelihood (Laplace Approximation) [glmerMod] Family: binomial ( logit ) Formula: cbind(Fruit_1, Fruit_0) ~ Treatment + (1 | PlantID) AIC BIC logLik deviance df.resid 125.9 131.5 -59.0 117.9 26 Scaled residuals: Min 1Q Median 3Q Max -2.0793 -0.8021 -0.0603 0.6544 …

2
使用Nakagawa&Schielzeth(2013)R2glmm方法在混合模型中计算
我一直在阅读有关在混合模型中计算值的信息,在阅读了R-sig常见问题解答之后,该论坛上的其他帖子(我会链接一些但我没有足够的声誉)以及其他一些参考资料,我知道使用在混合模型的上下文中,值很复杂。R2R2R^2R2R2R^2 但是,我最近在下面看到了这两篇论文。尽管这些方法对我来说确实很有希望,但我不是统计学家,因此我想知道其他人是否会对他们提出的方法以及与其他提出的方法进行比较有任何见解。 Nakagawa,Shinichi和Holger Schielzeth。“从广义线性混合效应模型获得R2的通用且简单的方法。” 《生态与进化中的方法》 4.2(2013):133-142。 约翰逊,保罗CD。“将Nakagawa&Schielzeth的R2GLMM扩展到随机斜率模型。” 《生态与进化中的方法》(2014年)。 也可以使用MuMIn包中的r.squaredGLMM函数来实现is方法,该方法提供了对该方法的以下描述。 对于混合效应模型,可以分为两种类型。边际代表用固定因子解释的方差,并定义为: 条件R ^ 2被解释为由固定和随机因素(即整个模型)解释的方差,并根据以下公式计算: R_ {GLMM}(c)^ 2 = \ frac {(σ_f ^ 2 + \ sum(σ_l^ 2))} {(σ_f^ 2 + \ sum(σ_l^ 2)+σ_e^ 2 +σ_d^ 2} 其中σ_f^ 2是固定效应分量的方差,并且\ sum (σ_l^ 2)是所有方差分量(组,个体等)的总和,σ_l^ 2R2R2R^2R2R2R^2RGLMM(m)2=σ2fσ2f+∑(σ2l)+σ2e+σ2dRGLMM(m)2=σf2σf2+∑(σl2)+σe2+σd2R_{GLMM}(m)^2 = \frac{σ_f^2}{σ_f^2 + \sum(σ_l^2) + σ_e^2 + σ_d^2}R2R2R^2RGLMM(c)2=(σ2f+∑(σ2l))(σ2f+∑(σ2l)+σ2e+σ2dRGLMM(c)2=(σf2+∑(σl2))(σf2+∑(σl2)+σe2+σd2R_{GLMM}(c)^2= \frac{(σ_f^2 …

1
非线性混合模型(NLME)的预测置信区间
我想获得非线性混合nlme模型预测的95%置信区间。由于没有提供任何标准来执行此操作nlme,因此我想知道使用“人口预测间隔”方法是否正确(如Ben Bolker的书章所述,该模型基于最大似然的模型)根据拟合模型的方差-协方差矩阵对固定效应参数进行重采样,基于此模拟进行预测,然后取这些预测的95%百分数得到95%的置信区间? 执行此操作的代码如下:(我在这里使用nlme帮助文件中的“ Loblolly”数据) library(effects) library(nlme) library(MASS) fm1 <- nlme(height ~ SSasymp(age, Asym, R0, lrc), data = Loblolly, fixed = Asym + R0 + lrc ~ 1, random = Asym ~ 1, start = c(Asym = 103, R0 = -8.5, lrc = -3.3)) xvals=seq(min(Loblolly$age),max(Loblolly$age),length.out=100) nresamp=1000 pars.picked = mvrnorm(nresamp, mu = …

1
默认的lme4优化器需要对高维数据进行大量迭代
TL; DR:lme4优化似乎是线性在默认情况下,模型参数数量,并且是这样慢比等效的glm与组虚拟变量模型。我有什么可以加快速度的吗? 我正在尝试适应一个相当大的分层logit模型(约5万行,100列,50组)。将正常的logit模型拟合到数据(带有用于组的虚拟变量)可以很好地工作,但是层次模型似乎被卡住了:第一个优化阶段可以很好地完成,但是第二个阶段需要进行很多迭代,而无需进行任何更改并且不停止。 编辑:我怀疑问题主要是我有这么多的参数,因为当我尝试将其设置maxfn为较低的值时会给出警告: Warning message: In commonArgs(par, fn, control, environment()) : maxfun < 10 * length(par)^2 is not recommended. 但是,参数估计在优化过程中完全没有改变,因此我仍然对执行该操作感到困惑。当我尝试设置maxfn优化器控件(尽管有警告)时,它似乎在完成优化后挂起。 这是一些重现随机数据问题的代码: library(lme4) set.seed(1) SIZE <- 50000 NGRP <- 50 NCOL <- 100 test.case <- data.frame(i=1:SIZE) test.case[["grouping"]] <- sample(NGRP, size=SIZE, replace=TRUE, prob=1/(1:NGRP)) test.case[["y"]] <- sample(c(0, 1), size=SIZE, replace=TRUE, prob=c(0.05, 0.95)) …

2
为什么对于二项式glmm,SAS PROC GLIMMIX给我的随机斜率与glmer(lme4)有很大不同
我是一位更熟悉R的用户,并且一直在尝试针对5个生境针对四个栖息地变量在5年内估计约35个个体的随机斜率(选择系数)。响应变量是某个位置是“已使用”(1)还是“可用”(0)栖息地(下面的“使用”)。 我正在使用Windows 64位计算机。 在R版本3.1.0中,我使用下面的数据和表达式。PS,TH,RS和HW是固定效应(对生境类型的标准化测量距离)。lme4 V 1.1-7。 str(dat) 'data.frame': 359756 obs. of 7 variables: $ use : num 1 1 1 1 1 1 1 1 1 1 ... $ Year : Factor w/ 5 levels "1","2","3","4",..: 4 4 4 4 4 4 4 4 3 4 ... $ ID : …

1
Lmer模型无法收敛
我的数据在这里描述当拟合重复测量方差分析时,什么会导致aov中的“ Error()模型为奇异误差”? 我试图使用来查看交互的效果,lmer所以我的基本情况是: my_null.model <- lmer(value ~ Condition+Scenario+ (1|Player)+(1|Trial), data = my, REML=FALSE) my.model <- lmer(value ~ Condition*Scenario+ (1|Player)+(1|Trial), data = my, REML=FALSE) 运行anova会给我带来显着的结果,但是当我尝试考虑随机斜率((1+Scenario|Player))时,模型将失败,并显示以下错误: Warning messages: 1: In commonArgs(par, fn, control, environment()) : maxfun < 10 * length(par)^2 is not recommended. 2: In optwrap(optimizer, devfun, getStart(start, rho$lower, rho$pp), : convergence …
12 r  lme4-nlme 

1
找不到适合混合效果的计数数据的良好模型-ZINB还是其他?
我有一个关于单蜂丰度的非常小的数据集,我无法进行分析。它是计数数据,几乎所有计数都在一种处理中,而大多数零在另一种处理中。还有两个非常高的值(六个站点中的两个站点中的每个站点),因此计数分布的尾巴非常长。我正在R中工作。我使用了两个不同的软件包:lme4和glmmADMB。 泊松混合模型不适合:当不拟合随机效应时模型过于分散(glm模型),而当拟合随机效应时模型分散不充分(glmer模型)。我不明白为什么会这样。实验设计要求嵌套随机效应,因此我需要将它们包括在内。泊松对数正态误差分布不会提高拟合度。我使用glmer.nb尝试了负二项式误差分布,但无法拟合它–达到了迭代极限,即使使用glmerControl(tolPwrss = 1e-3)更改了公差。 因为很多零是由于我根本看不到蜜蜂(它们通常是微小的黑色物体)而造成的,所以我接下来尝试了零膨胀模型。ZIP不太适合。ZINB是迄今为止最好的模型拟合,但是我仍然对模型拟合不太满意。我不知道下一步该怎么做。我确实尝试了跨栏模型,但无法将截断分布拟合到非零结果–我认为是因为在控制处理中有很多零(错误消息是“ Model.frame.default(formula = s.bee〜tmt + lu +:可变长度不同(发现为“治疗”)”)。 另外,我认为我所包含的交互对我的数据做了一些奇怪的事情,因为系数很小,尽管当我比较bbmle软件包中使用AICctab的模型时包含交互的模型是最好的。 我包括一些R脚本,这些脚本几乎可以重现我的数据集。变量如下: d = Julian日期,df = Julian日期(作为因子),d.sq = df平方(蜜蜂数量增加,然后整个夏天下降),st =站点,s.bee =蜜蜂数量,tmt =处理,lu =土地利用类型,hab =周围景观中半自然栖息地的百分比,ba =边界地区的圆形田地。 非常感谢收到关于如何获得良好模型拟合的任何建议(替代误差分布,不同类型的模型等)! 谢谢。 d <- c(80, 80, 121, 121, 180, 180, 86, 86, 116, 116, 144, 144, 74, 74, 143, 143, 163, 163, 71, 71,106, …

1
对lmer和p值的困惑:memisc包中的p值与MCMC的p值相比如何?
我的印象是,该功能下lmer()的lme4包没有产生p值(见lmer,p值和所有)。 我一直在按以下问题使用MCMC生成的p值:混合模型中的显着效果,lme4以及以下问题:在的包中的输出中找不到p值lmer()lm4R。 最近,我尝试了一个名为memisc的程序包,并将其getSummary.mer()模型的固定效果保存到一个csv文件中。就像是魔术一样,p出现了一个名为的列,该列与我的MCMC p值非常紧密地匹配(并且不会遭受使用带来的处理时间pvals.fnc())。 我试探了其中的代码,getSummary.mer并发现了生成p值的行: p <- (1 - pnorm(abs(smry@coefs[, 3]))) * 2 这是否意味着可以直接从lmer输出生成p值,而不是运行pvals.fnc?我意识到这无疑将引发“ p值拜物教”辩论,但我很想知道。我没有听说过memisc,当涉及到前面提到的lmer。 更加简洁:与使用MCMC p值生成的值相比,使用MCMC p值有什么好处(如果有)getSummary.mer()?

1
在隐马尔可夫模型中选择“最佳”模型的标准
我有一个时间序列数据集,试图将其拟合隐马尔可夫模型(HMM),以便估计数据中的潜在状​​态数。我的伪代码是这样的: for( i in 2 : max_number_of_states ){ ... calculate HMM with i states ... optimal_number_of_states = "model with smallest BIC" ... } 现在,在通常的回归模型中,BIC倾向于支持最简约的模型,但对于HMM,我不确定这是在做什么。谁真的知道BIC标准倾向于哪种HMM?我也能够获得AIC和似然值。由于我试图推断出真实的州总数,因此其中一个标准是否比另一个标准“更好”?

2
每级1个观察值的混合模型
我正在glmer为一些业务数据拟合随机效应模型。目的是分析分销商的销售业绩,并考虑到地区差异。我有以下变量: distcode:发行商ID,大约有800个级别 region:顶级地理ID(北,南,东,西) zone:嵌套在中层地理区域内region,总共约30个层级 territory:嵌套在zone约150层中的低层地理 每个分销商仅在一个地区运营。棘手的部分是这是汇总数据,每个分发服务器只有一个数据点。因此,我有800个数据点,尽管有规律地尝试,但我试图(至少)容纳800个参数。 我已经安装了一个模型,如下所示: glmer(ninv ~ 1 + (1|region/zone/territory) + (1|distcode), family=poisson) 尽管可以打印出注释,但运行没有问题: 随机效应的分组因子的级别数等于 n,即观察数 这是明智的做法吗?我得到了所有系数的有限估计,而且AIC也不是不合理的。如果我尝试使用带身份链接的泊松GLMM,则AIC会更糟,因此日志链接至少是一个不错的起点。 如果我绘制拟合值与响应的关系图,我得到的基本上是完美拟合,我猜这是因为每个分配器有一个数据点。那合理吗,还是我做的事完全愚蠢? 这正在使用一个月的数据。我可以获取多个月的数据并以这种方式进行一些复制,但是我必须添加新的术语来表示逐月的变化以及可能的交互作用,对吗? ETA:我再次运行了上面的模型,但是没有family参数(所以只是一个高斯LMM而不是GLMM)。现在lmer给我以下错误: (函数(fr,FL,start,REML,verbose)中的错误:用于随机效应的分组因子的数量级必须小于观察值的数量 因此,我想我做的事情不明智,因为改变家庭不会产生影响。但是现在的问题是,为什么它首先起作用?

2
如何在R中使用lmer()测试泊松GLMM中的过度分散?
我有以下模型: > model1<-lmer(aph.remain~sMFS1+sAG1+sSHDI1+sbare+season+crop +(1|landscape),family=poisson) ...这是摘要输出。 > summary(model1) Generalized linear mixed model fit by the Laplace approximation Formula: aph.remain ~ sMFS1 + sAG1 + sSHDI1 + sbare + season + crop + (1 | landscape) AIC BIC logLik deviance 4057 4088 -2019 4039 Random effects: Groups Name Variance Std.Dev. landscape (Intercept) …

1
如何使用nlmer()对重复测量数据拟合非线性混合效应模型?
我正在尝试分析重复测量的数据,并努力使其在R。我的数据基本上如下,我有两个治疗组。每组中的每个主题每天都要接受测试,并给出分数(测试正确率)。数据为长格式: Time Percent Subject Group 1 0 GK11 Ethanol 2 0 GK11 Ethanol 3 0 GK11 Ethanol 4 0 GK11 Ethanol 5 0 GK11 Ethanol 6 0 GK11 Ethanol 数据类似于对数曲线,受试者在几天内表现很差,随后迅速改善,随后达到平稳状态。我想知道这种处理方法是否会对测试性能曲线产生影响。我的想法是在中使用nlmer()该lme4软件包R。我可以使用以下方法为每个组拟合线条: print(nm1 <- nlmer(Percent ~ SSlogis(Time,Asym, xmid, scal) ~ Asym | Subject, salinedata, start = c(Asym =.60, xmid = 23, scal …

2
从lmer获得自由度
我已经将lmer模型与以下内容配合在一起(尽管已完成输出): Random effects: Groups Name Std.Dev. day:sample (Intercept) 0.09 sample (Intercept) 0.42 Residual 0.023 我真的很想使用以下公式为每种效果建立一个置信区间: (n − 1 )s2χ2α / 2 ,n − 1,(n − 1 )s2χ21 - α / 2 ,Ñ - 1(ñ-1个)s2χα/2,ñ-1个2,(ñ-1个)s2χ1个-α/2,ñ-1个2 \frac{(n-1)s^2}{\chi^2_{\alpha/2, n-1}},\frac{(n-1)s^2}{\chi^2_{1-\alpha/2,n-1}} 有没有一种方法可以方便地摆脱自由度?

1
具有完全成功的分类变量的二项式glmm
我正在运行带有二项式响应变量和分类预测变量的glmm。随机效果由用于数据收集的嵌套设计给出。数据如下所示: m.gen1$treatment [1] sucrose control protein control no_injection ..... Levels: no_injection control sucrose protein m.gen1$emergence [1] 1 0 0 1 0 1 1 1 1 1 1 0 0.... > m.gen1$nest [1] 1 1 1 2 2 3 3 3 3 4 4 4 ..... Levels: 1 2 3 4 …

2
什么是lme4 :: lmer等同于三向重复测量方差分析?
我的问题基于此回答,该回答表明哪个lme4::lmer模型对应于两次重复测量方差分析: require(lme4) set.seed(1234) d <- data.frame( y = rnorm(96), subject = factor(rep(1:12, 4)), a = factor(rep(1:2, each=24)), b = factor(rep(rep(1:2, each=12))), c = factor(rep(rep(1:2, each=48)))) # standard two-way repeated measures ANOVA: summary(aov(y~a*b+Error(subject/(a*b)), d[d$c == "1",])) # corresponding lmer call: anova(lmer(y ~ a*b+(1|subject) + (1|a:subject) + (1|b:subject), d[d$c == "1",])) 我现在的问题是如何将其扩展到三向方差分析的情况: …

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.