r 中的 Sweave 函数因错误而失败(选项:结果似乎导致了问题)

r 中的 Sweave 函数因错误而失败(选项:结果似乎导致了问题)

我从教授的网站上获得了以下功能:http://diskworld.wharton.upenn.edu/~foster/teaching/471/sweave-intro.pdf

该函数用于将 sweave (.Rnw) 转换为 PDF。

但是当我在我的计算机上运行它时,出现此错误:

Error in match.arg(options$results, c("verbatim", "tex", "hide")) :

‘arg’ 应为 “verbatim”、“tex”、“hide” 之一

功能:

Sweatex  <- function(filename,extension='Rnw',
     command='pdflatex',silent=FALSE,preview=FALSE) {
  if (command=='latex') command='simpdftex latex --maxpfb'
  extension<-paste('.',extension,sep='')
  path=options('latexcmd')[[1]]
  path=substr(path,start=1,stop=nchar(path)-5)
  Sweave(paste(filename,extension,sep=''))

  system(paste(path,command,' ',filename,sep=''),intern=silent)

  if (preview)
  {
    system(paste(options('pdfviewer')[[1]],' ',filename,'.pdf',sep=''))
  }
}

有人能指点一下吗?提前致谢。

问候,Tharma

答案1

您可以使用以下命令在 R 环境之外(在 Linux 控制台中,也可能在 Windows 中)直接获取 PDF 格式的文件:

 R CMD Sweave --pdf file.Rnw

请注意,如果 LaTeX 代码包含必须编译两次的内容(请参阅在哪些情况下您需要多次编写一份文档?),那么您必须避免该 --pdf选项(至少对于最终文档)并根据需要多次编译file.tex结果pdflatex

相关内容