x文件F

knitr chunk caches a value for x
then text A contains several Sexpr{} calls, including Sexpr{x}

将F编译为pdf效果很好

现在,我将文本A移到单独的LyX文件C中,使C成为子文件,而将F成为主文件

重写F-应该两次产生“文本A”
knitr chunk caches a value for x
text A
\include(C)

一切正常,编译两次生成“文本A”,但包含部分中的\Sexpr{x}除外,找不到缓存的值。我已经审查了knitr和knitr / LyX文档以及许多帮助站点,但是无法弄清楚在这种情况下缓存如何工作(或无法工作)。

最佳答案

这不是缓存问题,而是LyX或尚未实现的功能的问题。目前,LyX子文档被视为独立文件,这意味着它们是在单独的R session 中编译的,因此无法在文档之间共享变量。您可以向LyX开发人员提交feature request。关键是,当LyX包含knitrSweave模块并作为另一个文档的子文档包含在内时,不应单独进行编译(将此作业移交给knitrSweave)。

无论如何,我个人认为这不是一个大问题-我总是将所有内容都放在一个LyX文档中。

关于r - 包含编织的Sexpr {}的LyX子文档找不到缓存的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15436236/

10-10 04:40