问题标签 [multilevel-analysis]

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.

0 投票
2 回答
797 浏览

r - lmer 系数是否标准化?

我有一个非常基本的问题;也许有点太基本了,无法找到有用的回应谷歌搜索它。

我正在使用以下代码使用 lmer 函数计算多级模型:

我是否正确假设检索到的系数是非标准化的?如果是,是否有一种简单的方法来标准化它们?

最好的,

卡罗琳

0 投票
0 回答
274 浏览

r - R绘制因子的组合水平(ggpredict)

我正在使用函数 ggpredict 来显示 lmer 模型的结果。

该模型有一个连续的 X (RT)、一个连续的 Y (RC1) 和 4 个离散因子 (2x2x2x14)。模型:

没有 14 级因子的绘图示例,因为它太大了

问题 1:为了简化图表,我希望得到组为 m3 和 m4 组合的结果。我试过了 :

但它不起作用。

问题2:有没有办法只使用一个因子水平来简化情节?我知道其他一些绘图包允许它,但在ggpredict().

0 投票
1 回答
91 浏览

r - 用 0 和 1 在 R 中给出不同输出的分类变量编码

我做了什么:我在 R 中使用 nlme 库进行了线性混合效应模型分析。我有一个分类固定变量,模糊,有 2 个级别:B 代表模糊,N 代表非模糊。根据建议,我将它们更改为 1(代表 B)和 0(代表 N)。

问题:我重新运行模型。而且我得到了不同的 p 值/结果(我并不是说 + p 值变成了 -,我的意思是数字变了)。

我做了什么来解决它:然后,我颠倒了顺序(我给 B 给了 0,给 N 给了 1),看看它是否改变了任何东西。我得到的 p 值和系数与我将其编码为 B 和 N 时相同(太棒了!)。但是你知道为什么会这样吗?

编辑:我在这里添加一个可重现的示例:只有 80 行的数据:https ://home.mycloud.com/action/share/dedef0a3-794c-4ccc-b245-f93559de1f33

结果 p 值不同,我找不到原因...

编辑2:另一个可重现的例子:

0 投票
0 回答
572 浏览

r - R Lmer 模型无法收敛,几乎无法识别(特征值非常大)/奇异拟合

运行多级模型时出现以下两个警告:

警告消息: 1: 在 checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, : 模型无法收敛到 max|grad| = 103.424 (tol = 0.002, component 1) 2: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, : 模型几乎无法识别:非常大的特征值 - 重新调整变量?

我的数据可以通过以下任一链接下载: Google DriveDropbox

令人费解的是,当我在不同的计算机上尝试时,我有一个新的警告:

边界(奇异)拟合:参见 ?isSingular

运行模型的代码如下:

我已经尝试了许多其他 Stack Overflow 类似问题中建议的解决方案,比如这里。首先,更改优化器:

警告消息:1:在 checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, : 模型无法收敛到 max|grad| = 6.1826 (tol = 0.002, component 1) 2: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, : 模型几乎无法识别:非常大的特征值 - 重新调整变量?

边界(奇异)拟合:参见 ?isSingular

警告消息: 1: 在 optwrap(optimizer, devfun, getStart(start, rho$lower, rho$pp), : 来自 nlminbwrap 的收敛代码 1 2: 在 checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, : 模型未能收敛到 max|grad| = 25.1833 (tol = 0.002, component 1) 3: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :模型几乎无法识别:非常大的特征值 - 重新调整变量?

然后,我已经完成了奇点检查,这可能是问题所在,但我不知道如何解决:

结果值:

0.1728425

尝试重新缩放(使用上面相同链接中的代码):

也许我可以对特定变量进行一些更简单的重新缩放,但我不知道从哪里开始。它们都或多或少相似(从 1-10、0-4 等)

0 投票
0 回答
280 浏览

r - 使用 lmer R 在一个简单模型中进行奇异拟合,但在另一个模型中不拟合

我正在使用 lmerTest 运行一个多级模型,其中员工嵌套在团队和部门中。我正在采用模型比较方法,因此我正在构建仅具有随机效应的模型。以下是我使用两个随机效应(团队和部门成员)来预测剧烈运动时的结果:

这个模型——以及所有后续模型——运行良好,没有错误。但是,当我在 lite 练习中使用相同的数据运行相同的模型时,我会收到一个奇点警告,并且突然部门成员没有差异:

除了因变量,数据都是一样的,所以我很困惑为什么会这样。我相信这不是由于过度拟合(就像在这个线程中(如何应对线性混合模型中的奇异拟合(lme4)?)),因为即使剧烈运动模型包含更多变量,它也永远不会给出单一警告。

您对为什么会发生这种情况以及如何在不取消部门成员资格的情况下解决此问题有任何想法吗?我尝试了其他站点的建议,包括将 REML = FALSE 和更改优化器 [control = lmerControl(optimizer ='optimx', optCtrl=list(method='L-BFGS-B')],但没有任何效果。

谢谢!

编辑:这是数据样本。注意:team_num 和 dept_client 是因素。

0 投票
1 回答
713 浏览

r - 如何使用 R 中的 lme4 包解决随机效应和残余方差误差?

我正在尝试使用lme4 包分析 199 名参与者的一些模拟数据(长数据格式) 。在这个数据集中,归属感、真实性和包容性被测量了两次,并通过运动条件 (= 0, 1, 2)、时间 (= 0, 1) 和人口 (=0, 1)进行预测。为此,我将以下三个模型拟合到数据中:

但是,当我尝试拟合这三个模型时,出现以下错误

Error: number of observations (=398) <= number of random effects (=398) for term (1 + Time | id); the random-effects parameters and the residual variance (or scale parameter) are probably unidentifiable

我在 StackOverflow 上阅读了一些建议,这些建议可能有助于更改(1 + Time | id)(Time | id)没有帮助,我仍然收到相同的错误。

你能帮我解决这个错误吗?

0 投票
0 回答
49 浏览

r - 无法在多级模型中使用 ggplot 绘制手动线

我对 R 比较陌生,显然不是很有经验。但是,我使用多级建模来识别语音对睡眠参数的影响。例如,此片段中的 TST 是总睡眠时间,强度是语音强度(在本例中为平均值)。

我设法得到一个散点图,这取决于我想要的参与者人数。但是,我现在想为我的模型包括回归线,显示模型与空模型的截距和斜率(不包括我的自变量)。

然而,无论我尝试什么,我似乎都无法显示基于截距和斜率的回归线,即使在手动输入它们的值之后!

这是我的计算代码,我的计算和绘图。

模型:

阴谋:

我没有收到任何错误消息,但也从来没有看到任何行。我尝试按照 ggplot2 手册的说明进行操作,但结果很短

有没有办法“手动”绘制一条线?

提前致谢!!

0 投票
0 回答
32 浏览

r - R如何理解多层次模型?

我是 R 和一般传销的新手。我有几个城市的建筑许可证数据集,我创建了一个变量来计算有许可证的地块数量。现在,我想进行一次传销,看看是否存在人口普查区(地理层面)效应。这是我遇到问题的地方。写这一行时:

我是否还需要包括人口普查区变量?如果不是,R 怎么知道我的级别是 CITY>>CT>>PERMITS (这确实是结果)?

0 投票
0 回答
87 浏览

r - ggplot随机截距垂直而不是水平

我正在尝试绘制一个随机截距模型,该模型还包含最佳拟合线。该模型应该显示团队文化和有益行为之间的关系。因此,所有个人都嵌套在团队中。

当我尝试绘制我的数据时,我可以让我的最适合水平绘制的线,但是当我按团队分组时,我所有的随机截距都是垂直的而不是水平的(见下图)。你对如何进行有什么建议吗?我希望所有的球队线都与最合适的线相似,但截距不同。

绘图现在看起来像每组垂直线而不是水平线的示例

这是一个示例数据集。我还包括了我的多级模型中的预测值。

0 投票
2 回答
72 浏览

python - 根据多级数据框中列中的数据存在排列数据框

我在熊猫中有一个多级列,df索引appid如下:

我想将其转换df为可以通过最新年份的条目进行排序。例如