如何使用 Replace() 循环 nlme 包中的 lme 函数?

2023-12-13

我正在尝试使用lme函数来自nlme包里面有一个lapply环形。这适用于lmer函数来自lme4包,但会产生错误消息lme。我怎样才能循环lme功能类似于lmer下面例子中的函数?

library("nlme")
library("lme4")

set.seed(1)
dt <- data.frame(Resp1 = rnorm(100, 50, 23), Resp2 = rnorm(100, 80, 15), Pred = rnorm(100,10,2), group = factor(rep(LETTERS[1:10], each = 10)))

## Syntax:
lmer(Resp1 ~ Pred + (1 |group), data = dt)
lme(Resp1 ~ Pred, random = ~1 | group, data = dt)

## Works for lme4
lapply(c("Resp1", "Resp2"), function(k) {
  lmer(substitute(j ~ Pred + (1 | group), list(j = as.name(k))), data = dt)})

## Does not work for nlme
lapply(c("Resp1", "Resp2"), function(k) {
lme(substitute(j ~ Pred, list(j = as.name(k))), random = ~1 | group, data = dt)})

# Error in UseMethod("lme") : 
# no applicable method for 'lme' applied to an object of class "call"

附言。我知道这个解决方案存在,但我想使用直接在模型函数中替换响应变量的方法,而不是使用附加函数对数据进行子集化。


而不是摆弄substitute and eval您还可以执行以下操作:

lapply(c("Resp1", "Resp2"), function(r) {
   f <- formula(paste(r, "Pred", sep = "~"))
   m <- lme(fixed = f, random = ~ 1 | group, data = dt)
   m$call$fixed <- f
   m})

如果您想向建模函数提供不同的数据集,您可以使用相同的技巧:

makeModel <- function(dat) {
   l <- lme(Resp1 ~ Pred, random = ~ 1 | group, data = dat)
   l$call$data <- as.symbol(deparse(substitute(dat)))
   l
}

当我想从函数内生成模型并想在之后更新它时,我经常使用这个片段。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 Replace() 循环 nlme 包中的 lme 函数? 的相关文章

  • R 是解释型编程语言还是编译型编程语言?

    R 是解释型编程语言还是编译型编程语言 The R FAQ https cran r project org doc FAQ R FAQ html What is R 003f说 R 的核心是一种解释型计算机语言
  • 如何在 R 中编写 csv 文件,其中我的输入作为行写入文件?

    这是一个非常简单的问题 令我惊讶的是网上没有例子 我有一个向量 vector lt c 1 1 1 1 1 我想将其写为 csv 作为一个简单的行 write csv vector file myfile csv row names FAL
  • R 中的闭包类似于 Python

    首先考虑以下 Python 代码 该代码计算函数被调用的次数 def counter fn count 0 def inner args kwargs nonlocal count count 1 print Function 0 was
  • 如何将管道链 (magrittr) 的结果提供给对象

    这是一个相当简单的问题 但我无法通过 google stackexchange 找到答案并查看 magrittr 的文档 如何提供通过 gt 连接的函数链的结果来创建向量 我看到大多数人做的是 a lt data frame x c 1 3
  • Rstudio 更有意义的窗口标题

    我在 Ubuntu 16 04 下使用 R studio 版本 1 0 143 窗口标题仅显示一个非常无信息的 RStudio 我希望至少有当前选项卡的名称 或者最好是与此选项卡对应的文件的完整路径 在 Windows 下 完整路径似乎出现
  • 如何调整ggplot2中的标题位置

    这是代码 require ggplot2 require grid pdf a pdf png a png a lt qplot date unemploy data economics geom line opts title A b l
  • 修改 GGplot2 对象

    然而 我很好奇 是否可以添加任何特定的图例或将哪个物种对应于观察到的预期绘图中 以分别知道它是哪个圆圈 我目前使用的是一个名为 finches 的假数据集 该包称为 cooccurr 它创建一个 ggplot 对象 我很好奇如何实际编辑它以
  • R Markdown / Bookdown 中的水平规则导致错误

    突然 我在 Markdown Bookdown 中编织为 PDF 时遇到错误 我的系统没有任何变化 该错误是由 水平规则 引起的 即 Markdown 中的任意位置 或 尽管两侧都有行空格 我提供了一个简单的违规示例 它不会合并成 PDF
  • Foreach循环无法找到对象

    我正在尝试将 foreach 与并行后端结合使用来加速计算 用于特征选择的 AUCRF 随机森林的交叉验证 如果这确实重要的话 在这样做的过程中 我需要获取向量的子集 向量的名称可以更改 但可以作为字符向量进行访问 我使用 eval par
  • dplyr 标准评估:summarise_ 以及求和变量的变量名称

    我遇到了很多与我的问题类似的问题 但只解决了我问题的一部分 我使用带有标准评估的 dplyr 来容纳变量名称 这对于管道中的 filter 和 group by 效果很好 但是 为了总结 我无法为我正在求和的指标提供变量名称 一个例子就可以
  • R strsplit 问题(容易解决吗?)

    这应该是一件很容易做到的事情 我在这里读到的类似示例有点复杂 而且这些技术对我来说并不真正有效 我有一个名为 id string 的变量 gt typeof id string 1 character and gt id string 1
  • 如何在 sqlSave() 命令中跳过主键?

    我正在尝试使用 RODBC 在 MySQL 数据库中插入 data frame 我正在使用的命令如下 sqlSave channel dbData tablename table name append TRUE safer TRUE fa
  • R闪亮的html小部件之间的交互

    我正在开发一个 R 闪亮应用程序 它使用多个 html 小部件 特别是网络D3 d3热图 and 和弦诊断 这些小部件单独工作正常 但是 在同一页面中使用它们会留下一个空格处他们应该在哪里 这是显示错误的可重现代码 在 UI 中注释绘图线
  • 闪亮的演示文稿 (ioslides):自定义 CSS 和徽标

    我安装了以下内容 RStudio 预览版 版本 0 98 864 2014 年 5 月 24 日 knitr 和shiny 的开发版本 来自 devtools install github c yihui knitr rstudio shi
  • R:错误消息---包错误:“functionName”未从当前命名空间解析

    我正在使用一个一直运行到 R3 0 的软件包 问题如上所述 当我们调用在 R 2 15 2 中工作的函数时 从 R 3 0 开始我们得到一个错误 Error in C solarspectrum3 as double lon as doub
  • 尽管提供了群落矩阵,纯素食 DBRDA 物种得分为空

    我使用纯素社区生态包在 R 中执行了 基于距离的冗余分析 dbRDA 我想在 dbRDA 结果的排序图中显示 鱼类 营养群体对样本之间差异 营养级鱼类组合的丰度数据 的相对贡献 IE 将箭头和营养级组名称叠加到排序图上 其中箭头线的长度表示
  • 在 R 中读取 Stata 13 文件

    有没有办法在 R 中读取 Stata 版本 13 数据集文件 我尝试执行以下操作 gt library foreign gt data read dta TEAdataSTATA dta 但是 我收到一个错误 read dta TEAdat
  • 在 Shiny 中使用 readlines(prompt = )

    我有一个代码 使用以下方式获取输入readlines prompt 功能 您能告诉我 Shiny 中的哪个输入函数足以将此代码适应 Shiny 应用程序吗 我需要一个交互功能 我无法使用简单的输入selectInput 因为我有很多read
  • Quarto/Rmarkdown 中的美人鱼图:狭窄且模糊

    我正在尝试生成 pdf 格式的四开文档 稍后会生成 word 格式 我遇到了美人鱼图的问题 请在下面找到一个示例 qmd 文件来说明该问题 所以首先它应该支持 mermaid 标签 但当我这样做时 我无法在 rstudio 中 运行 单元
  • 有效地将环境从内部功能转移到全局环境

    我有一个在其中创建环境的函数 我希望将该环境分配给全局环境 目前我通过将环境分配给来做到这一点globalenv 作为最后一步 如下 funfun lt function inc 1 dataEnv lt new env dataEnv d

随机推荐

  • Celery工人导入错误:没有名为“项目”的模块

    当我尝试启动工作人员时 我遇到了一个问题 导入错误 没有名为 项目 的模块 回溯 最近一次调用最后一次 File usr local bin celery line 11 in
  • 根据未来结果排序

    我试图按未来布尔值对列表进行排序 我有一个 ID 列表 我需要查询外部服务以查明它们背后是否有上下文信息 我用来执行此操作的方法返回一个可选的 future 通过使用分区方法 我希望创建两个 ID 列表 一个包含上下文信息 另一个不包含上下
  • 按前缀过滤数组的本机函数

    假设我有一个包含以下成员的数组 car porsche car mercedes car toyota motorcycle suzuki motorcycle honda motorcycle motoguzzi 如何获得一个包含所有元素
  • 使用 PrettyFaces 调用 FileUploadListener 时重建 ViewScoped bean

    我已经插入了一个
  • 有没有办法在不创建变量的情况下调用需要指针的函数?

    我有这个函数调用 uint32 t func uint32 t a uint32 t b 我想用这样的整数文字来调用它 func 0 b where b is a uint32 t 有什么方法可以在不创建中间变量的情况下做到这一点 IE 我
  • R get() 函数错误

    我正在尝试填充一组 矩阵 对象 名称保存在列表中 我可以 使用 get 返回具有给定名称的对象 但我 当我使用 get 定义矩阵时遇到函数问题 我试图填充的对象 Create list of matrix names list names
  • 超出最大调用堆栈大小 - 没有明显的递归

    我花了大约 12 个小时查看这段代码 并摆弄它 试图找出哪里存在递归问题 因为我收到了 超出最大调用堆栈大小 错误 但还没有找到它 请比我聪明的人帮助我 到目前为止 我发现当我制作这个物体时 spot a circle 对象 问题消失了 但
  • 如何在主窗体之前显示辅助窗体?

    我有一个应用程序提示用户在表单中输入密码 但是 主窗体显示在次窗体之后 如何使主窗体在用户输入密码之前不显示 Edit main form public Form1 new InputPswrd Show InitializeCompone
  • 内存泄漏工具告诉我零泄漏,但内存占用量不断增加

    我正在 SDK 3 2 中对我的应用程序进行一些内存分析 我使用 泄漏 分析器来查找所有内存泄漏 并将它们全部堵住 这是一个滚动视图导航控制器应用程序 其中有图块 您单击一个图块将进入新的图块视图 依此类推 我可以深入许多级别并一直回到顶部
  • 在App Store中更改应用程序名称

    我有一个名为 X 的应用程序 它已经在应用商店获得批准 现在由于某些原因我希望它被称为 X Pro 我应该在 plist 或 ITC 中编辑什么来更改此名称 我想我应该更改bundle name或bundle display name 但是
  • 解析和打印 PHP 代码

    我最好想要一个允许我解析 PHP 的解决方案from PHP 但欢迎任何解决方案 作为我正在寻找的示例 Ruby 具有 除其他外 ruby parser gem Edit 我希望从 PHP 代码生成某种抽象语法树 除非我弄错了 否则我完全意
  • 从 grails 中的 gsp 页面进行 ajax 调用

    我是阿贾克斯新手 我正在尝试从 gsp 页面向控制器操作发送请求 但我失败了 它没有调用控制器操作并且页面正在重新加载 任何人都可以看看这个并提供帮助 这是我的查看页面如下 gt gt gt
  • 通过 GPS 位置获取城市的 WikiData 标识符

    我想获取特定 GPS 位置的城市 定居点 表示给定范围内最接近的一个或最多是最接近的 我在维基媒体数据示例中找到了一些示例查询 我尝试采用然后但我只得到错误或超时 这是我当前的查询 SELECT WHERE city wdt P31 wdt
  • JavaScript 交通灯

    img src assets red gif
  • 传递以字符 [ 开头的 JSON 请求会出现错误:GET 操作的请求格式无效 [重复]

    这个问题在这里已经有答案了 当我传递以以下开头的 JSON 请求时 我收到错误消息 GET 操作的请求格式无效 这是我的要求 在 PostMan 中同样可以正常工作 equipmentNumber 76576 systemIdentifie
  • 什么时候你真正被迫使用 UUID 作为设计的一部分?

    我真的不明白有什么意义UUID 我知道碰撞的概率是实际上为零 but 实际上为零甚至接近不可能 有人可以举一个你别无选择只能使用 UUID 的例子吗 从我见过的所有用途中 我可以看到一种没有 UUID 的替代设计 当然 设计可能会稍微复杂一
  • 如何计算多个csv文件中的行数

    我有如下所示的 csv 文件 file1 A B 1 2 3 4 file2 A B 1 2 file3 A B 1 2 3 4 5 6 我想计算所有 csv 文件中的行数 I tried f pd read csv file1 f sha
  • Swift 3 第一个参数名称

    在 Swift 2 中 调用函数时似乎并不总是需要第一个参数名称 现在在 Swift 3 中 调用函数时需要第一个参数名称 例如 func frobnicate runcible String print Frobnicate runcib
  • HAML 中的多行字符串

    因为我不希望任何行的宽度超过 80 列 所以我想将最后一行分成两行 按照建议在行尾添加逗号here但随后逗号出现在字符串内 有没有一种好的 干净的方法可以用 HAML 来做到这一点 if object errors any section
  • 如何使用 Replace() 循环 nlme 包中的 lme 函数?

    我正在尝试使用lme函数来自nlme包里面有一个lapply环形 这适用于lmer函数来自lme4包 但会产生错误消息lme 我怎样才能循环lme功能类似于lmer下面例子中的函数 library nlme library lme4 set