[R] Strange behaviour of setwd/getwd

Berend Hasselman bhh at xs4all.nl
Fri Nov 2 21:35:33 CET 2012


On 02-11-2012, at 21:02, Markus Holotta wrote:

> Maybe my question was not clear enough:
> default.wd is the working dir defined in the RStudio options.
> In my script I want to change it temporarily to another directory by setwd(choose.dir()) and set it back to the default.wd before calling another script. But after choosing the new directory tmp.wd shows the same path in the workspace as default.wd. Calling getwd() shows the correct path.
> Hope its clearer now.
> 

No.
Read the help for setwd(). 

setwd returns the current directory before the change, invisibly and with the same conventions as getwd. It will give an error if it does not succeed (including if it is not implemented).

The essential bit is "before the change".

Berend


> 
> Am 02.11.2012, 19:14 Uhr, schrieb Duncan Murdoch <murdoch.duncan at gmail.com>:
> 
>> On 02/11/2012 12:57 PM, Markus Holotta wrote:
>>> I've found the following strange behaviour R (RStudio) which has been
>>> confirmed by another user in RGui.
>>> 
>>> 
>>> Inside a script I want to set two variables:
>>> 
>>> default.wd = getwd()
>>> tmp.wd = setwd(choose.dir())
>>> 
>>> After choosing tmp.wd the value of default.wd is shown in Workspace, but
>>> getwd() is giving back the correct string of tmp.wd.
>>>   Is there a workaround for the problem?
>>> 
>> 
>> 
>> It's not clear what the problem is from your post.  As the help page says, both default.wd and tmp.wd should be the same after executing those two lines.  If you want to store both the old and new directories, you should do it like this:
>> 
>> old.wd <- setwd(choose.dir())
>> new.wd <- getwd()
>> 
>> Duncan Murdoch
> 
> ______________________________________________
> 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