Windows batch R Sweave error loading packages

时间秒杀一切 提交于 2019-12-24 02:23:42

问题


I am having trouble finding clear documentation on how to set up a batch file for a Sweave document on Windows XP.

I am using the batch files that are found here

I have created a batch file names run.bat which contains the following:

Sweave myFile.Rnw

The first thing I do in my Sweave file after setting the wd is read in a dataset using the RODBC package:

library(RODBC)
fetch <- odbcConnect("myDatabase")
myData <- "select * from myTable"
x <- sqlQuery(fetch, myData)
odbcCloseAll()

When I run my batch file, I receive the following error:

Error: chunk 2
Error in library(RODBC) : there is no package called RODBC
In addition: Warning message:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
    there is no package called 'xtable'

Obviously these packages do exist and are functional, but something isn't right in the permissions or it isn't finding the right directories. Any thoughts?

Related question here


回答1:


What does this return when you type it in R (in the GUI) ?

 .libPaths()

What does it show when you run in the Rnw file?

The documentation in help(Startup) will have several suggestions as to where you can set R_LIBS and its variants.




回答2:


I found an immediate solution to my problem, though understand there are certain limitations to this method. I abandoned using the CRAN provided .bat files for dynamically finding the appropriate path to R and hardcoded the path to R as such:

"C:\Program Files\R\R-2.11.0\bin\Rterm.exe" --vanilla <%run.r>%run.r
 del *.log
 del *.aux

This .bat file will fire up R, run the script run.r which contains two commands:

Sweave("myFile.Rnw")
tools::texi2dvi("myFile.tex", pdf=TRUE)

and then cleans up the intermediate .log and .aux files from the LaTeX output. Obviously, the bulk of the work is done in myFile.Rnw but this will atleast let me click one button, perform my analysis, and generate the PDF file.

If someone can think of a way to make this more efficient, I'd appreciate it.



来源:https://stackoverflow.com/questions/3558592/windows-batch-r-sweave-error-loading-packages

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!