[R] Help needed! Error in setwd(newdir) : cannot change working directory

R. Michael Weylandt michael.weylandt at gmail.com
Sun Feb 26 18:48:57 CET 2012

This is a mess -- please resend in plain text.

Also, there are not, to my knowledge, packages (not libraries) called
"A", "B", or "C" so your script doesn't even begin to look
reproducible were it legible.

Do you have read/write access to the directories in question?


On Sat, Feb 25, 2012 at 11:25 PM, ying chen <ying_chen at live.com> wrote:
> Hi Guys,
> I am new to R and just trying to write a small script to automate a couple commands. But I run into the setwd(): cannot change working directory.
> I googled a little bit and tried all fixes/suggestions with no success.
> Basically I have a script that works from inside a directory with my data (/home/sean/Rtest/Data01). Now I want to modify the script to make it run from the upper directory (/home/sean/Rtest) because I have many data directories under /Rtest, such as /home/sean/Rtest/Data01, /home/sean/Rtest/Data02, /home/sean/Rtest/Data03,.....
> I want to modify my script so that it will run from /Rtest, and with the data directory name as arg passed to my R script. Here is my mytest02.R script:
>>># retrieve args>>args <- commandArgs(TRUE);>># store the current directory>>initial.dir <- getwd();>>newdir <- paste(initial.dir,args,sep="/");>>outfilename <- paste(args,"out",sep=".");>># change to the new directory>>setwd(newdir);>># load the necessary libraries>>library("A");  #>>library("B");>>library("C");>># set the output file>>sink(outfilename);>>........    #data processing>>........    #data processing>>........    #data processing>># close the output file>>sink();>># unload the libraries>>detach("package:A");  #>>detach("package:B");>>detach("package:C");>># change back to the original directory>>setwd(initial.dir);
> Then I run the script by
>>>sean at I7-3930K:~/Rtest$ R --slave --args Data01 < mytest02.R
> I got the error message:
>>>sean at I7-3930K:~/Rtest$ R --slave --args Data01 < mytest02.R>>Attempting to load the environment ‘package:R.utils’>>Loading required package: R.methodsS3>>R.methodsS3 v1.2.1 (2010-09-18) successfully loaded. See ?R.methodsS3 for help.>>Loading required package: utils>>R.oo v1.8.3 (2011-11-01) successfully loaded. See ?R.oo for help.>>>>Attaching package: ‘R.oo’>>>>The following object(s) are masked from ‘package:R.methodsS3’:>> >>   throw.default>>>>The following object(s) are masked from ‘package:methods’:>> >>   getClass, getClasses, getMethods>>>>The following object(s) are masked from ‘package:base’:>> >>   attach, detach, environment, gc, load, save>>>>R.utils v1.9.11 (2012-01-17) successfully loaded. See ?R.utils for help.>>>>Attaching package: ‘R.utils’>>>>The following object(s) are masked from ‘package:utils’:>>>>    timestamp>>>>The following object(s) are masked from ‘package:base’:>>>>    cat, commandArgs, getOption, inherits, isOpen, lapply, parse,>>    remove, warnings>>>>[1] "/home/sean/Rtest">>[1] "/home/sean/Rtest/NA"       "/home/sean/Rtest/TRUE"    >>[3] "/home/sean/Rtest/Data01">>[1] "NA.out"       "TRUE.out"     "Data01.out">>Error in setwd(newdir) : cannot change working directory>>Execution halted
> What did I do wrong?
> One more question, is there anyway to modify this script to make it work on all data directories under /home/sean/Rtest by itself?
> Thanks a lot for the help!
> Ying
>        [[alternative HTML version deleted]]
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

More information about the R-help mailing list