gpt4 book ai didi

r - 如何在 Rstudio Markdown 中使用全局环境中的对象

转载 作者:行者123 更新时间:2023-12-03 07:34:14 25 4
gpt4 key购买 nike

我在 Stack Overflow 上看到过类似的问题,但几乎没有确凿的答案,当然也没有对我有用的答案。

在 Markdown (Rstudio) 脚本中访问和使用位于全局 R 环境中的对象(回归拟合、数据框、其他对象)的最简单方法是什么。

考虑到 RStudio 团队倾向于让事情变得舒适和有效,我感到惊讶的是,没有简单的解决方案。

提前致谢。

最佳答案

无论好坏,这种遗漏都是故意的。依赖文档外部创建的对象会降低文档的可重复性——也就是说,如果您的文档需要全局环境中的数据,您不能只给某人(或两年后的您自己)文档和数据文件并让他们重新创建它自己。

出于这个原因,并且为了在后台执行渲染,RStudio 实际上创建了一个单独的 R session 来渲染文档。该后台 R session 无法看到您在 RStudio 中看到的交互式 R session 中的任何环境。

解决此问题的最佳方法是获取用于创建全局环境内容的代码并将其移动到文档中(如果您不想,可以使用 echo = FALSE它显示在文档中)。这使得您的文档独立且可复制。

如果您做不到这一点,您可以采取几种方法来直接使用全局环境中的数据:

  1. 不要使用 Knit HTML 按钮,而是在 R 控制台中输入 rmarkdown::render("your_doc.Rmd")。这将在当前 session 而不是后台 session 中编织。或者:

  2. 在渲染之前将全局环境保存到 .Rdata 文件(使用 R 的 save 函数)和 load它在你的文档中。

关于r - 如何在 Rstudio Markdown 中使用全局环境中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34029611/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com