问题标签 [nlme]

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 投票
1 回答
4284 浏览

r - 在 R 中拟合重复测量

在 R 中拟合重复测量,收敛问题。我有以下拟合,它是许多数据集之一,它不会收敛。我做其他的套装。这个数据集和模型在 SAS 中工作......我可以为在 R 中进行这项工作找到一些方向吗?要看的东西(矩阵、选项设置、r/splus 的这个主题的参考...)。

我已阅读以下内容并仍在尝试通过它... 将重复测量混合模型公式从 SAS 转换为 R

0 投票
2 回答
4588 浏览

r - R 中具有交叉重复效应和 AR1 协方差结构的线性混合模型

我有来自参与者 ( part) 的受试者内生理数据,他们都在三轮 ( round) 中查看了刺激物(阅读报纸),每轮有五篇论文 ( ),并且在每一轮中,报纸上的访问次数 ( )paper不定visit. 我有两个固定因素(CONDhierCONDabund)加上交互作用来预测生理状态(例如,EDA),这通常是自回归的。我试图通过随机效应来考虑生理上的个体差异(让我们暂时只考虑截距),并且可能会因另一种随机效应而在回合中感到疲劳。

因此,我想在 R 中运行的模型在 SPSS 中是:

现在,我明白了,虽然lme交叉项做得不好,lmer(处理交叉项没有问题)不能使用不同的协方差结构。我可以运行简单的 lme 模型,例如

但更复杂的模型超出了我的范围。我已经读过 lme 中的交叉术语可以通过随机定义来完成,例如

但这似乎阻止了我的 AR1 结构和 part*round 的第二个随机截距。而且我不太确定它是否与我的 SPSS 语法相同。

那么,有什么建议吗?尽管有很多关于 lme 和 lmer 的不同著作,但我找不到一个同时具有交叉术语和 AR1 的著作。

(此外, lme 上的语法似乎很模糊:从几个不同的来源我了解到 | 将左侧的内容分组到右侧的内容下, / 构成嵌套项, ~1 是随机截距, ~x 是随机斜率, 和 ~1+x 两者都是, 但似乎至少有 : 和 -1 定义我在任何地方都找不到。有没有教程可以解释所有不同的定义?)

0 投票
0 回答
509 浏览

r - 使用 R 的非线性混合模型?

我有一个像这个示例数据这样的数据集,其中包括三个站点。我想沿着“timeInt”模拟“cumSR”的趋势。我使用以下模型(“cumSR~b/(cc+(timeInt)^(-z))”)为每个站点执行此操作。现在我想使用相同的模型来为这三个站点只获得一条曲线。我认为我需要使用非线性混合模型,对吗?我已经尝试过“nlme”包中的“nlme”函数和“lme4”函数中的“nlmer”函数,但还没有弄清楚。有人可以帮忙吗?非常感谢。

0 投票
0 回答
1278 浏览

r - 在 R 中向 nlme 模型添加协变量

我最近开始学习使用nlme模型拟合数据。我想知道是否有一种更合乎逻辑的方法可以在下面的 nlme 模型中生成所有可能的协变量组合(对于变量asy和):int

如您所见,asy 和 int 这两个变量有三个协变量。我想生成所有可能的协变量组合,然后寻找最适合的模型。到目前为止,我还没有找到任何与此相关的主题,因此我将不胜感激任何有用的想法。有人还可以告诉我如何使 r 代码在帖子中正确显示吗?

谢谢

0 投票
1 回答
484 浏览

r - lme() 不同的结果在Revolution R下运行(责备MKL?)

更新(2014 年 8 月):我从未深究此事,也从未在 Revolution 论坛上得到任何反馈。然而,这个问题似乎已在 Revolution R 7.2 中得到解决(使用 R 3.0.3,同样是学术版本)。我运行了几百次以下的 lme() 测试,所有结果都和预期的一样。[更新结束]

我刚刚在一台新 PC 上安装了革命 R 7.0 (R 3.0.2) 的学术版,下面的代码得到了奇怪的结果。每次运行代码时,它都会给出不同的结果。在 CRAN-R 下,结果总是相同的(我认为应该如此)。代码片段来自test.data.table()版本 1.8.10 的测试 527,它指出了错误。

我得到类似下面的东西,但每次都不一样。

'有趣'的事情是nlme包(其中lme()的一部分)本身是相同的,我卸载并重新安装以确保(包的 nlme_3.1-113.zip 文件是逐位相同的)。

我还不够了解,无法深入了解。任何指针或想法将不胜感激。我也在Revolutions的论坛上发过帖子,但这里的人似乎比这里少得多……

这是在 64 位 Windows 8.1、64 位 R 以及 Intel i7-4770 CPU 下(如果重要)。当前版本的 Revolution R (R 3.0.2) 和之前的 (2.15.3) 都会产生意想不到的(对我而言)行为。CRAN-R 3.0.1 和 3.0.2 产生相同的结果。

革命 R 的 sessionInfo() 输出:

更新 1: 我已经将问题(遵循下面的答案和评论中的一些指针)追溯到 Revolution R 使用英特尔 MKL BLAS 库的事实。如果我切换到 CRAN 提供的 BLAS 库,问题就会消失。(注意:我对自己编译 R 的了解不够,所以我没有测试过 OpenBLAS 和其他替代方案。在 Revolution R 中,只需重命名两个 dll-s。)。

似乎其他人也得到了与 MKL 不一致的结果。机器公差内存在差异,即为all.equal()TRUE 而identical()为 FALSE。在我的案例中,不同的结果似乎非常大。

我已经在 Revolution R 的论坛上发布了这个问题,如果我得到回复,我会在这里更新。我想此时我的问题应该修改为“何时使用 MKL BLAS 以及何时使用 CRAN-R BLAS”。这不是速度(*)的问题,而是一致和正确的结果。我将花更多时间寻找标准测试套件(不确定此处的术语?)以检查 R 的输出与已知正确的输出。这是我喜欢的事情之一data.table,它有自己的测试对最终用户可见。我知道我不应该期望包含所有(甚至大多数)包的单个测试,但至少涵盖基本功能的东西。

(*) 速度取决于具体的工作流程。在这种特殊情况下,CRAN BLAS 比 MKL 快(都运行单线程)。在其他工作中,Revolution R 的速度要快得多,这就是我研究它的原因。

0 投票
0 回答
163 浏览

r - 因子变量中的级别名称很重要

我已经使用因子变量拟合了 lme 模型studytreat。它出现在模型中的两个地方,作为一个固定效应,也用于对残差方差中的异质性进行建模,以便每个级别studytreat都有自己的方差。这是模型:

我有一个问题让我对 lme 没有信心!如果我将 studytreat 中的级别标记为 11、12、21、24(按此顺序),则该功能可以正常工作。但是,如果我切换数字以获取,11, 21, 12, 42那么当我打电话时,summary(modelLME)$apVar我会收到错误消息:

有谁知道为什么这会有所作为?

0 投票
1 回答
359 浏览

r - 按参数估计的大小排序随机效应图(使用 nlme)

ranef我想使用对象 ( plot.ranef.lme)的绘图方法制作随机效果图。

在此处输入图像描述

上面,y 轴上的因子顺序遵循因子水平的顺序。现在,我希望级别的顺序与随机效应参数的大小相对应。我能想到的最好办法是在估计模型使用随机效应参数重新排序因子水平,重新排序因子并再次估计模型。至少可以说这很笨拙,但是我无法通过 plot 方法中的一些参数来完成此操作(我对 lattice 不是很熟悉)。

在此处输入图像描述

这就是我想要的,但没有使用上面笨拙的方法。我怎样才能以更明智的方式做到这一点?

0 投票
0 回答
532 浏览

r - 使用 nlme 的多元混合模型

我有两个相关的响应变量 (y1,y2) 由相同的协变量集 (x1,x2) 解释,每个变量的均值 = 0。

我有一个随机分组因子('group'),它是异方差的(y1 的组 ~ N(0,sigma_u1) 和 y2 的 N(0,sigma_u2))。

我想通过也是异方差的随机误差对响应之间的相关性进行建模。

我正在使用以下代码生成示例数据集。后面是我尝试的 nlme 代码(这给了我一个错误)。我将不胜感激有关如何正确执行此操作的任何指导。

如果我的代码看起来很笨拙,我提前道歉。

谢谢!

0 投票
1 回答
224 浏览

r - nlme 的两个随机项

我正在使用nlmeR 中的包执行混合模型。我的情况是:混合模型是:

哪里Animal是随机效应。但是,如果我这样写模型,我只能获得随机截距和斜率DFC(by Animal),而不能获得DFC2. 我也想有随机斜率(by AnimalDFC2!请你帮助我好吗?

非常感谢,

0 投票
1 回答
5120 浏览

r - lme - 错误:“闭包”类型的对象不是子集

我正在尝试运行线性混合效果模型(包 nlme),但我反复收到错误:'closure' 类型的对象不是子集。

谢谢。