2014-04-06 323 views
4

在RStudio中打开或创建项目时,工作目录会自动更改为项目的目录。但是,如果您要保存文件或在其他子目录中工作,那么更改工作目录通常很方便。在每个脚本中处理这个可能会很痛苦。解决Rstudio中的项目根目录

是否有一个变量始终指向项目根目录(也可以通过“Knit HTML”按钮分叉的会话读取),这可以用来使这更容易?

“编织HTML”按钮似乎将工作目录设置为R Markdown文件的工作目录。例如,如果你在你的./Rprofile有一个名为project.root变量,并单击“针织HTML”这个剧本打开,

```{r} 
getwd() 
source('./Rprofile') 
setwd(project.root) 
getwd() 
``` 

的第一个和最后的结果将是脚本目录,其余的将抛出错误。

回答

3

回顾一下,你推断的,你可以在命令行中集R的工作目录,如下所示:

setwd(“〜/ NateProjects”)

您还可以使用RStudio的文件窗格导航至一个目录,然后从菜单中将其设置为工作目录:会话 - >设置工作目录 - >到文件窗格位置。 (你会看到更多的选择)。或者在“文件”窗格中选择更多并设置为工作目录。

但是,你可以做得更好&设置一个像专业程序员一样的环境。为此,您可以选择将与项目相关的所有文件(一个项目被松散地定义为我的所有个人代码在一个项目下)组织在一起 - 输入数据,R脚本,分析结果,数字。事实上,RStudio已经内置了对此的支持。有一位优秀的教程在这里,你可以看看,解释如何一步一步详细穿行:

http://www.rstudio.com/ide/docs/using/projects

从本质上讲,从文件服用,你需要做到以下几点:

  • 使用创建项目命令(可在项目菜单和全局工具栏上)创建一个新项目。这可以是你把所有未来的子项目和子文件夹中

然后,一旦你创建RStudio这个新项目的地方,以下动作发生:

  • 您创建一个项目文件(带有.Rproj扩展名)在项目目录中。该文件包含各种项目选项(如下所述),也可以用作直接从文件系统打开项目的快捷方式。
  • 您将创建一个隐藏目录(名为.Rproj.user),其中存储项目特定的临时文件(例如,自动保存的源文档,窗口状态等)。如果需要,该目录也会自动添加到.Rbuildignore,.gitignore等。
  • 您加载的项目进入RStudio和工程工具栏中显示其名称(这是位于主工具栏的最右边)
+0

哦没关系,所以'。Rprofile'文件可以用来设置一堆项目变量,包括存储项目根目录。为我没有更仔细阅读而为我服务。谢谢! –

+0

完全没问题!乐于帮助! –

+1

不幸的是,这种类型的变量似乎无法被RStudio启动的“编译为HTML”子流程读取。能够像这样很好地使用界面并且另外将工作发送到另一个会话(和核心)是相当重要的。我将编辑问题以包含此内容。 –