问题标签 [random-effects]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nested - 指定嵌套在固定效应相互作用下的随机效应
大概是一件容易的事。
我有具有固定和随机效应的数据,我想将混合效应模型拟合到:
固定效果是group
andtreatment
而随机效果是class
,据我了解,它嵌套在group
andtreatment
组合中。
我要拟合的模型是:
如果group:treatment
交互感兴趣的效果在哪里。当然,我想将其class
视为随机效应,但我似乎无法找到它的语法。我试过了:
(1|group*treatment/class)
但(1|group:treatment/class)
都给出了错误。
在 中定义一group:treatment
列df
:
和拟合:
似乎确实有效,但我想知道这是否是唯一的方法,或者对于这种随机效果嵌套的情况是否有更明确的语法。
任何想法?
r - 在 R 中使用 GAMM 混合模型运行 Cox.ph 模型
我是使用 GAM 和样条线的新手。我正在运行一个生存模型,在该模型中,我想用两个变量控制的受试者年龄来模拟事件时间。这是使用带有 coxph 的传统生存模型的示例:
我怀疑 var1 和 var2 与结果之间的关系不是线性的,而且我认为我可以在我的模型中包含随机效应(转向混合效应模型 gamm)。我试过这种语法:
并包括随机效应:
我的问题是: 1. 在 fit_gam 中,我不知道如何总结这个模型并查看系数表和绘制模型。这个错误来找我:
“Ops.Surv(w, object$y) 中的错误:对生存时间的无效操作”
- 在 fit_gamm 中,我无法运行模型,因为语法出现了一些错误,或者我可能无法包含 surv?错误是:“ncol(x) 中的错误:找不到对象‘x’”
先感谢您!
r - lmer 模型未能与随机效应结构收敛
我正在尝试在我的随机效应结构(最佳模型拟合)中使用截距和斜率效应,但这样做时会出现以下错误。
警告消息: 1: In commonArgs(par, fn, control, environment()) : maxfun < 10 * length(par)^2 不推荐。2: Inoptwrap(optimizer, devfun, getStart(start, rho$lower, rho$pp), :
来自 bobyqa 的收敛代码 1: bobyqa -- 超过了函数评估的最大数量 3: 在 checkConv(attr(opt, "derivs") , opt$par, ctrl = control$checkConv, : 模型未能收敛到 max|grad| = 0.0704516 (tol = 0.002, component 1)
当我只运行拦截效果时,我没有收到这些错误:
通过 REML ['lmerMod'] 拟合线性混合模型 公式:(sqrt(degrees)) ~ Condition * CogLoad + (1 | Video) + (1 | Subject) 数据:数据集
收敛时的 REML 标准:183048.6
缩放残差:Min 1Q Median 3Q Max -3.7418 -0.6048 -0.0377 0.5293 5.9471
随机效应:组名称方差 Std.Dev。
主题(截取)0.01385 0.1177
视频(截取)0.15947 0.3993
残差 0.67628 0.8224
obs 数量:74731,组:主题,27;视频,11固定效应:估计标准。错误 t 值(截距) 2.260374 0.123524 18.299 ConditionMap 0.022744 0.050473 0.451 CogLoadNone 0.047609 0.008152 5.840 ConditionMap:CogLoadNone 0.051590 0.013228 3.900
固定效应的相关性:(Intr) CndtnM CgLdNn ConditionMp -0.121
CogLoadNone -0.032 0.068
CndtnMp:CLN 0.016 -0.130 -0.507
如果有人知道为什么第一个模型没有适当地收敛,我会非常喜欢一些输入。
r - 包来估计具有随机效应的生存函数?
我想估计一个包含随机(和固定)效应的函数中的累积风险。估计应该是半参数的(用样条估计,分段常数指数等)
我尝试了 R 包frailtypack
,但该additivePenal
功能无法正常工作(它不与层项收敛)。
有没有人建议使用 R 函数来估计生存函数(带有分层项)和随机效应?
非常感谢 !
r - 用于在混合 logit 模型中将主题设置为随机效应的最直接的 R 包
我有一个数据集,其中每个人都属于一个特定的群体,在多个离散结果之间反复选择。
我想测试组成员身份如何影响选择,并想解释由于同一个人做出的重复选择而导致的观察的非独立性。反过来,我计划实现一个混合多项式回归,将组作为固定效应,将 subID 作为随机效应。在 R 中似乎有一些多项式 logits 选项,我希望得到一些指导,这对于这个混合模型来说可能最容易实现:
1) multinom - GLM,通过 nnet,允许使用 multinom 函数。对于固定效应模型,这似乎是一个不错、清晰、直接的选择。但是,有没有办法用 multinom 实现随机效应? 之前的 CV 帖子表明 multinom 能够处理具有泊松分布和对数链接的混合效应 GLM。但是,我不明白(a)为什么会这样或(b)所需的语法。谁能澄清一下?
2) mlogit - 一个很棒的包,带有非常有用的小插曲。但是,“混合 logit”文档是指具有与替代特定协变量相关的随机效应的模型(通过rpar
参数实现)。我的模型没有替代的特定变量;我只是想说明参与者的随机截取。这可能与 mlogit 吗?是否通过将 subID 设置为使用 mlogit.data 将数据整形为长格式时自动考虑了这种id.var
差异?编辑:我刚刚找到了一个“欺骗”mlogit 的例子,它为因人而异的变量提供随机系数(非常底部),但我不太了解所涉及的语法。
3) MCMCglmm显然是另一种选择。但是,作为 R 的相对新手和完全不熟悉贝叶斯统计的人,我个人不习惯用这个包解析混合 logits 的示例语法,或者,即使遵循语法,对先验或其他需要的参数进行猜测。
对于最直接的方法及其语法实现的任何指导将不胜感激。我还想知道 subID 的随机效应是否需要嵌套在组内(因为个人是组的成员),但这可能是 CV 的问题。无论如何,非常感谢您的任何见解。
r - 具有嵌套和交叉效应的 G-Study
我在为以下数据设置 G-study 时遇到了一些问题”:
学生与项目交叉并嵌套在评分者中。我假设这些影响暂时是随机的。我不知道如何编写回归公式。
我尝试了以下公式
我不断收到一条错误消息:
错误:每个分组因子的水平数必须 < 观察数。
我不确定函数中是否需要设置其他参数gstudy
。
总结一下,我有两个问题:
- 您如何为与项目交叉并嵌套在评分者中的学生编写公式?
- 我需要在
gstudy
函数中包含其他参数吗?
PS:我之前没有使用过这个gtheory 包。
r - lme中具有交叉变量的多个随机斜率和截距
我正在使用该lme
包创建一个线性混合模型,因为我需要为数据指定一个 AR1 相关结构和异质方差(它是 3 个单独刺激的时间序列数据)。
我有 2 个感兴趣的变量 - CS 和 sec - 它们都是固定变量,但sec在 y 轴上,CS是分组变量。每个 CS 都是每秒测量一次,因此它们是交叉变量,我有理由相信我需要为两者分别建模随机斜率和截距。我的原始模型如下所示:
model <- lme(DV ~ CS + sec + CS:sec, random = ~CS|subject, method = "ML", data = df)
但这只是为每个 CS 建模一个单独的斜率。我从阅读中知道,建模交叉随机变量lme
是一件苦差事,并且已经阅读了这篇关于如何可能进行的文章。不幸的是,这种策略似乎只模拟交叉的斜坡?有没有办法做类似的事情,以便对变量斜率和截距进行建模?在这次黑客攻击的背景下,这是否有意义?我知道这可以通过lmer
命令中的简单语法使用简单的东西(slope | g1) + (slope2 | g2)
来完成,所以看起来很奇怪,它不能在lme
r - 如何使用连续变量进行反向变换
我想知道如何正确地对单变量线性混合效应模型的输出进行反变换以对其进行解释。我没有发布数据来配合我的问题,因为我的问题应该可以在没有数据的情况下回答。
我的模型(为本问题的目的而简化):
在哪里:
activity
是一个连续响应变量sex
是具有 2 个级别(女性和男性)的分类变量BirthDate
是一个连续变量;BirthDate
是自 1 月 1 日以来的天数,然后以平均值为中心并标准化为一个标准差id
是个人身份的随机效应merge.data
是我的数据集的名称
之前BirthDate
以平均值为中心并标准化为一个标准差:
AfterBirthDate
以平均值为中心并标准化为一个标准差:
我想知道 和 的平均值是sex
多少BirthDate
。基于阅读Crawley 的 The R Bookm1
,我可以使用以下代码从我的模型中获取平均值:
这表示女性的平均活动得分为 -0.083,男性为 0.11。
当我尝试这个时BirthDate
,像这样:
我最终得到的是每个出生日期的 1 个平均值(BirthDate
以平均值为中心并标准化为一个标准差)。与 不同sex
,我无法对这些信息做任何事情......我试图展示增加出生日期对活动的影响(影响大小)。
我最终想做的是说,出生日期每增加 1 天,活动得分就会增加 [来自模型的数字]。
python - R 的这种混合效果将其转换为 python 是否正确?
我正在尝试从 R 中获得线性混合效果并将其转换为 python,但两者都给出了不同的结果。我是否正确转换它?我的 R 代码:
*
是预测变量之间的交互作用。我的python代码:
r - 指定不同组中具有相同水平的不同截距之间的相关性
假设我有 2 个因子变量foo
,bar
它们都包含相同的水平"a"
、"b"
和"c"
。有没有办法在 lme4 (或任何其他包)中指定具有随机截距的模型foo
以及bar
具有相同级别的截距之间的相关性?换句话说,我认为 in 的效果"a"
应该foo
与"a"
in相关bar
(类似 for"b"
和"c"
)。形式上,这可能类似于:
中的每个级别k
。["a", "b", "c"]
这是一些估计sigma^2_foo
和的代码sigma^2_bar
:
但当然错过了相关项rho
。是否可以将此相关结构添加到该模型中?
更新
希望对熟悉Stan的人有所帮助,在 Stan 中,此随机效应模型的基本实现如下所示: