如何自动更改工作目录

时间:2016-02-12 16:56:48

标签: r

我通常在从Google云端硬盘访问我的R代码时在Windows和Mac之间切换。每当我在桌面和笔记本电脑之间切换时,我需要做的重复性任务之一就是(取消)将文件路径注释到我的谷歌硬盘所在的相应目录。任何人都可以共享自动化代码如何做到这一点?我已经在Stata做了这个。

2 个答案:

答案 0 :(得分:4)

这是我的解决方案:

setwd(ifelse(.Platform$OS.type=="unix", "/Users/.../Google Drive", "C:/Users/.../Google Drive/"))

答案 1 :(得分:4)

通常,对于我开始的每个项目或分析,我都使用" config-like" R文件看起来或多或少像这样:

.job <- list ()

## rootDir in my laptop
.job$base_data_dir <- file.path ("", "home", "dmontaner", "datos")

## rootDir in my server
##.job$base_data_dir <- file.path ("", "scratch", "datos")

在这个&#34; config&#34; file我设置了根目录,我在每台机器上保存数据。我保留了一个不同的&#34; config&#34;文件在每台机器上,不要通过Dropbox同步它们。

然后我用这一行开始我的R脚本:

try (source (".job.r"))

当我必须处理任何文件或文件夹时:

setwd (file.path (.job$base_data_dir, "raw_data"))
...
setwd (file.path (.job$base_data_dir, "results"))

与此类似,如果您在两台计算机中保留数据目录的内部结构,则可以设置分配它的基本或根目录,并在两台计算机中访问数据。

file.path功能还可以处理操作系统的变化。

在R会话中,我调用配置变量,以开头,因为它是隐藏变量,所以当我执行ls ()或类似事情时,我看不到它。< / p>