swihart
swihart

Reputation: 2738

Message error 'C:/Program' not found with glmmadmb() in R

Using:

The error from a glmmadmb() call:

Error in system(cmd, intern = intern, wait = wait | intern, show.output.on.console = wait, : 'C:/Program' not found"

Prompted me to reinstall R in a pathname that had no spaces, as recommended from this post concerning the same error (with Rcpp). I did such, and the error persisted.

The code ran without error in Rstudio with the standard/default R installation (pathname with spaces). My problem occurred with EMACS/ESS/R 3.1.1 when trying to fit a glmmadmb(), which prompted me to run with debug=TRUE

>   gaFP0<-glmmadmb(count~tx,
                    random=~(1|Feed)+(1 | Pint),
                    data=dnoNM,family="nbinom",zeroInflation=TRUE,
                    debug=TRUE)

Which output:

platform: windows 64 
executable name: glmmadmb.exe 
bin_loc: C:/RLIB/glmmADMB/bin/windows64/glmmadmb.exe 
using temp directory
C:\Users\user1\AppData\Local\Temp\Rtmpq2AddG\glmmADMB90e434c55ff2 
creating temp directory changed working directory to
C:/Users/user1/AppData/Local/Temp/Rtmpq2AddG/glmmADMB90e434c55ff2 
Command line: "C:/RLIB/glmmADMB/bin/windows64/glmmadmb.exe" -maxfn 500 -maxph 5 -noinit -shess 
Error in system(cmd, intern = intern, wait = wait | intern, show.output.on.console = wait,  : 
'C:/Program' not found
 changed working directory to h:/
removed temp directory
C:\Users\user1\AppData\Local\Temp\Rtmpq2AddG\glmmADMB90e434c55ff2 

As a note -- I also reinstalled Emacs to have no spaces in the pathname and still had the error, although I did not uninstall the original version.

Upvotes: 0

Views: 598

Answers (1)

swihart
swihart

Reputation: 2738

The hack I employed so that EMACS/ESS could run the code was the following Sys.setenv() statement before the function call.

>   Sys.setenv(R_SHELL = "C:\\Windows\\system32\\cmd.exe")
>   gaFP0<-glmmadmb(count~tx,
                    random=~(1|Feed)+(1 | Pint),
                    data=dnoNM,family="nbinom",zeroInflation=TRUE,
                    debug=TRUE)

Now glmmadmb() runs as expected. See the reasons as explained by Ross Boylan (this Q&A stackoverflow post was written with his permission).

Upvotes: 1

Related Questions