【问题标题】:Knitr compiling and running all at the same time in RStudioKnitr 在 RStudio 中同时编译和运行
【发布时间】:2018-05-23 21:46:20
【问题描述】:

要在 RStudio 中运行 Rnw 文件,可以编译 或全部运行。编译看不到当前环境中的变量,当前环境看不到编译时创建的变量。我想看看编译时输出的样子,并使用环境调试代码。这需要我编译运行,两次执行相同的计算,这对于大型项目来说是非常不切实际的。有没有办法编译并在环境中看到输出?

【问题讨论】:

  • 你试过用<<-替换=吗?
  • 我试过了,并没有改变行为。

标签: r rstudio knitr


【解决方案1】:

当您编织文档时,工作发生在不同的 R 会话中,这就是您无法在当前会话中检查结果的原因。

但是除了run all,你还有很多选择。看一下 Run 按钮:它允许您一次运行一个块,或运行所有以前的块等。

如果您的某些块运行时间过长,那么您应该考虑以不同的方式组织您的工作。将长计算放入他们自己的脚本中,并使用save() 保存该脚本的结果。运行一次,然后花时间在主 .Rnw 文档中多次运行编辑这些结果的显示。

最后,如果您真的想在小插图运行结束时查看变量,您可以在最后添加save.image(file = 'vignette.RData'),并在您的交互会话中使用load('vignette.RData') 加载值以供检查。这不一定会在运行结束时为您提供准确的事物状态视图,因为它会加载除了您已经在工作区中获得的任何内容之外的值,它不会加载选项设置或附加包,但它可能足以用于调试。

【讨论】:

    猜你喜欢
    • 2017-11-08
    • 1970-01-01
    • 2013-02-09
    • 2020-04-14
    • 2017-10-25
    • 1970-01-01
    • 2014-01-24
    • 1970-01-01
    相关资源
    最近更新 更多