R Sweave:将 .Rnw 文件的全部代码放在附录中?

R Sweave: put the whole code of the .Rnw file in Appendix?

我刚刚发现这个 awesome technique 将 .Rmd 文件中使用的代码放在(同一文件的)附录中。

但是,我使用的是 R Sweave 而不是 R Markdown,我想知道是否存在类似的方法可以将所有代码放在一个独特的块中。在 Markdown 中执行此操作的代码在 Sweave 中不起作用。我明确指出,与 this post 不同,我没有单独的 .R 文件来进行计算。一切都在 .Rnw 文件中完成。

有人知道怎么做吗?

编辑:一个可重现的例子

\documentclass[11pt, twocolumn]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\begin{document}
\SweaveOpts{concordance=TRUE}

<<reg2, echo=FALSE, print=FALSE>>=
head(mtcars)
@

<<reg3, echo=FALSE, print=FALSE>>=
head(iris)
@

\section*{Appendix}
% the place where I could like to put the whole code

\end{document}

这个块包含代码:

<<echo=FALSE, eval=TRUE>>=
filename <- tempfile(fileext=".R")
Stangle("test.Rnw", output = filename, quiet = TRUE)
cat(readLines(filename), sep = "\n")
@

当我将其包含在您的示例文件中时,我看到了:

我认为可以稍微修改一下格式;有关详细信息,请参阅 ?Rtangleknitr 也可以做类似的事情,但它更灵活。我怀疑最好的方法与您为 RMarkdown 找到的方法类似。