我想使用knitr
根据长/复R脚本生成的结果生成动态文档。
我有以下要求:
<<chunk1>>=
plotData <- getData(some,arguments)
somePlottingFunction(plotData)
@
或
<<chunk2>>=
plotData <- getData(some,arguments)
xTable(plotData)
@
我的意思是我不希望将大部分R
代码与latex
我到目前为止所执行的操作是执行一个R
脚本,该脚本会在工作空间中留下一些R
个对象,然后使用这些对象并进行编织。
runFunctionAndKnit <- function(){
source('theRscript.R')
knit('theRnwFile.Rnw')
}
当我使用非常大的对象时出现问题,我只是不能让临时对象等待在脚本结束时编织(没有足够的RAM)
我快速红色knitr book(关于外部化),但找不到解决方案。除了保存要加载/编织的对象之后我不能做任何其他事情(这看起来像是在扼杀knitr
的目的)?
举个例子说我有一些像这样的R代码:
main <- function(){
#some stuff on 10s on lines
## @knitr chunk1
# ...
## @knitr
f1 <- function(){
#some code
## @knitr chunk2
#some stuff I'd like to knit
## @knitr
}
f1()
#some other stuff
## @knitr chunk3
# ...
## @knitr
}
是否有某种方法可以编织以下Rnw
文件(某些R对象可能因范围而被销毁):
<<chunk1>>=
@
<<chunk2>>=
@
<<chunk3>>=
@