RStudio环境窗格不显示knitr变量

siv3szwd  于 2023-05-26  发布在  其他
关注(0)|答案(2)|浏览(371)

我有一个非常简单的knitr Rnw脚本。当我在RStudio中运行它时,环境窗格显示全局环境为空,尽管脚本正确编译为pdf,并且变量的计算正确。

\documentclass{article}
\begin{document}
<<settings, echo=FALSE>>=
library(knitr)
a<-1+10
@

The outcome is equal to \Sexpr{a}.

\end{document}

直到最近,这一直都很好。我想知道这是否与一些RStudio设置或knitr选项有关。常规R脚本中的变量在环境窗格中显示良好。对于更复杂的knitr项目,能够查看变量可以使工作变得容易得多。

3lxsmp7m

3lxsmp7m1#

通常情况下,当您在RStudio中单击knit来编织文档时,它会在一个单独的R进程中运行,并且在完成时删除变量。你的代码块将无法看到环境中的变量,这些变量也不会被修改。
有几种方法可以在当前进程中运行:将每个块作为代码运行,或者在主进程中运行rmarkdown::render("somefilename.Rmd")。然后,您的文档可以看到您当前的工作区,并在那里进行修改。
对于调试,第二种方法很方便,但对于最终结果的可重复性,您应该运行单独的R进程。

t5zmwmid

t5zmwmid2#

最后,这就是我的工作。我没有在RStudio中点击“Compile pdf”按钮,而是在控制台中运行了以下命令:

knitr::knit2pdf("file.Rnw", envir = globalenv())

这是在这里推荐的:knitr: why does nothing appear in the "environment" panel when I compile my .Rnw file

相关问题