我想生成一个日志文件,它跟踪R控制台中的所有命令(stdin),结果(stdout)和错误/警告/消息(stderr).
我知道有很多日志包,我尝试了几个TeachingDemos
(似乎完全忽略了stderr)或R2HTML
(似乎忽略了消息),然而,它们似乎都没有包含来自stderr的所有东西.
只有knitr
并且markdown
似乎能够将所有内容都包含在一个文件中.但是使用这种解决方法,我必须编写R脚本,我无法在控制台中自由编写命令.
此外,我不能将knitr
or或markdown
命令包含在同一个R脚本中(这当然是一个小问题).
这是一个例子:
library(TeachingDemos) library(R2HTML) library(TraMineR) logdir <- "mylog.dir" txtStart(file=paste(logdir,"test.txt", sep=""), commands=TRUE, results=TRUE, append=FALSE) HTMLStart(outdir = logdir, file = "test", echo=TRUE, HTMLframe=FALSE) ## Messages, warnings and errors message("Print this message.") warning("Beware.") "a" + 1 geterrmessage() ## Some example application with the TraMiner package ## which uses messages frequently data(mvad) mvad.seq <- seqdef(mvad[, 17:86]) mvad.ham <- seqdist(mvad.seq, method="HAM") txtStop() HTMLStop()
flodel.. 9
如果您从Unix/Linux/Mac /等运行R.终端,你可以这样做:
R | tee mydir/mylog.txt
在Windows上,您可以运行脚本
R CMD BATCH yourscript.R
并且您的结果将显示在与yourscript.out相同的文件夹中