Rstudio 中的项目根地址

问题描述 投票:0回答:2

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

是否有一个始终指向项目根目录的变量(也可由“Knit HTML”按钮分叉的会话读取)可以用来简化此操作?

出现“Knit HTML”按钮,将工作目录设置为 R Markdown 文件的工作目录。例如,如果您的

project.root
中有一个名为
./Rprofile
的变量,并且在打开此脚本的情况下单击“Knit HTML”,

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

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

r environment-variables rstudio
2个回答
3
投票

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

setwd(“~/NateProjects”)

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

但是,您可以做得更好并像专业程序员一样设置环境。为此,您可以选择将与一个项目(该项目是松散定义的,因为我将所有个人代码都放在一个项目下)关联的所有文件组织在一起 - 输入数据、R 脚本、分析结果、图形。事实上,RStudio 对此有内置支持。这里有一个很棒的教程,您可以看一下,它详细解释了如何逐步完成:

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

本质上,根据文档,您需要执行以下操作:

  • 使用“创建项目”命令(可在“项目”菜单和全局工具栏上使用)创建新项目。这可以是您放置所有未来子项目和子文件夹的地方

然后,一旦您在 RStudio 中创建了这个新项目,就会发生以下操作:

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

0
投票

您可以使用包

rprojroot
中的函数find_rstudio_root_file()将项目的根目录存储在脚本顶部:

library(rprojroot)
root.dir = find_rstudio_root_file()

setwd("other_dir") 
# some code working in other dir
setwd(root.dir) 
# come back to the root of the project
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.