knitr:嵌套的子文档

Dav*_*idR 5 nested r knitr

读这个

只要嵌套结构在您的脑海中清晰可见,您就可以在另一个文档中自由地嵌套一个Rnw文档.

http://yihui.name/knitr/demo/child/ 我认为可以在已经嵌套的Rnw文档中嵌套一个Rnw文件.不幸的是,我没有设法这样做(可能是由于缺乏知识).例如,我有以下目录和文件:

工作目录

_ test.Rnw

_子文件夹

_ _ subdoc.Rnw

_ _子文件夹

_ _ _ subsubdoc.Rnw

包含:

% test.Rnw

\documentclass{article}

\begin{document}

<<child1, child='Subfolder/subdoc.Rnw', eval=TRUE>>=
@


\end{document}
Run Code Online (Sandbox Code Playgroud)

...并在subdoc.Rnw中我想包含另一个Rnw:

% subdoc.Rnw

<<child1, child='Subsubfolders/subsubdoc.Rnw', eval=TRUE>>=
@
Run Code Online (Sandbox Code Playgroud)

不幸的是,我在编织test时得到以下错误信息.Rnw:

...

label:child1(带选项)2 $ child的列表:chr"Subsubfolder/subsubdoc.Rnw"$ eval:logi TRUE

readLines中的Warnung(if(is.character(input2)){:kann Datei'Pubububderder /subsubdoc.Rnw'nichtöffnen:Datei oder Verzeichnis nicht gefunden

从第1-1行退出(./Subfolder/Subsubfolder/subsubdoc.Rnw)

从第2-4行退出(./Subfolder/Subsubfolder/subsubdoc.Rnw)

readLines中的Fehler(if(is.character(input2)){:kann Verbindungnichtöffnen

调用:knit ... process_group.block - > call_block - > lapply - > FUN - > knit - > readLines

Ausführungangehalten

这意味着,knitr无法打开'Subsubfolder/subsubdoc.Rnw',因为没有这样的文件或目录.将subdoc.Rnw中的代码更改为

<<child1, child='Subfolder/Subsubfolders/subsubdoc.Rnw', eval=TRUE>>=
@
Run Code Online (Sandbox Code Playgroud)

也没有意义,因为现在knitr试图将wd设置为

./Subfolder/Subfolder/Subsubfolder/subsubdoc.Rnw
Run Code Online (Sandbox Code Playgroud)

.编译test.Rnw没有在subdoc.Rnw中的子输入工作完美.

我在平台上使用knitr_1.5,R版本3.0.2(2013-09-25):i686-pc-linux-gnu(32位).