我在Stack Overflow上见过类似的问题,但几乎没有结论性的答案,当然也没有对我有用的答案.

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

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

提前谢谢.

推荐答案

不管是好是坏,这种疏忽是故意的.依赖在文档外部创建的对象会降低文档的可复制性——也就是说,如果您的文档在全局环境中需要数据,您不能只给某人(或您自己)文档和数据文件,然后让他们自己重新创建.

因此,为了在后台执行渲染,RStudio实际上创建了一个单独的R会话来渲染文档.该后台R会话无法看到您在RStudio中看到的交互式R会话中的任何环境.

解决此问题的最佳方法是使用用于创建全局环境内容的代码,并将其移动到文档中(如果不希望它显示在文档中,可以使用echo = FALSE).这使您的文档具有自包含性和可复制性.

如果你不能做到这一点,有几种方法可以直接在全球环境中使用数据:

  1. 在R控制台上键入rmarkdown::render("your_doc.Rmd"),而不是使用Knit HTML按钮.这将在本次会议上进行,而不是在后台会议上进行.或者:

  2. 将您的全球环境保存到.渲染之前的Rdata文件(使用R的save函数),并将其保存在文档中.

R相关问答推荐

如何向使用plot_smooths()函数显示的GAM结果图表中添加点?

如何将图案添加到ggplot中的一个类别

R通过字符串中的索引连接数据帧r

我可以截断10字节的扩展数并转换为8字节的double吗?

IQR()和stats之间四分位距计算的差异::分位数()在R和' ggpubr '

如何使用ggplot重新绘制LASO回归图?

如何将具有重复名称的收件箱合并到R中的另一列中,而结果不同?

使用scale_x_continuous复制ggplot 2中的离散x轴

卸载安装了BRM的模型发出的警告

如何创建构成多个独立列条目列表的收件箱框列?

以R为基数排列奇数个图

为什么st_join(ob1,ob2,left = True)返回具有比ob1更多功能的sf对象?

如何得到每四个元素向量R?

如何提取所有完美匹配的10个核苷酸在一个成对的匹配与生物字符串在R?>

将一个字符串向量调整为与其他字符串向量完全相同的大小

R如何将列名转换为更好的年和月格式

如果COLSUM为>;0,则COLNAME为向量

ggplot R:X,Y,Z使用固定/等距的X,Y坐标绘制六边形热图

使用R、拼图和可能的网格包绘制两个地块的公共垂直线

使用LAG和dplyr执行计算,以便按行和按组迭代