我希望这是正确的地方。对于我的统计作业,我使用 Sweave 进行内联计算,如下所示:
\begin{itemize}
\item[Problem 1]
<<label=block1,eval=T,echo=F>>
varA <- 2+2
@
The answer to the problem is \Sexpr{varA}
\end{itemize}
我希望能够在附录中完整地重现代码,但这不起作用:
\subsection*{Code}
<<block1>>
@
一定有一种干净的方法来做到这一点,而我却没有找到。
答案1
- 正如 R. Schumacher 提到的,
<<>>=
并且@
必须从第一列开始; <<>>
应该在代码块中使用,所以您必须将其放在<<>>=
;
这是一个完整的例子:
\begin{itemize}
\item[Problem 1]
<<block1,eval=T,echo=F>>=
varA <- 2+2
@
The answer to the problem is \Sexpr{varA}
\end{itemize}
\subsection*{Code}
<<all-blocks>>=
<<block1>>
@
答案2
和<<>>=
必须@
从第一列开始,并且同一行上没有任何后续字符。
该文件必须保存为你的文件名.Rnw然后运行,Sweave(yourfilename.Rnw)
它会给你你的文件名.tex现在可以使用 LaTeX 进行编译。建议你把你的文件名.Rnw在仅完成此项目的文件夹中。