【问题标题】:address project root in Rstudio在 Rstudio 中解决项目根目录
【发布时间】:2014-05-18 09:12:57
【问题描述】:

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

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

“Knit HTML”按钮出现,用于将工作目录设置为 R Markdown 文件的目录。例如,如果您的 ./Rprofile 中有一个名为 project.root 的变量,并且您在打开此脚本的情况下单击“Knit HTML”,

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

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

【问题讨论】:

    标签: r environment-variables rstudio


    【解决方案1】:

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

    setwd("~/NateProjects")

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

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

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

    基本上,从文档中获取,您需要执行以下操作:

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

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

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

    【讨论】:

    • 哦,好吧,所以.Rprofile文件可以用来设置一堆项目变量,包括存储项目根目录。适合我不仔细阅读。谢谢!
    • 完全没问题!乐于助人!
    • 不幸的是,RStudio 启动的“Knit to HTML”子进程似乎无法读取这种类型的变量。能够像这样很好地使用界面并将工作发送到另一个会话(和核心)是一件非常重要的事情。我将编辑问题以包含此内容。
    • 不错的特雷弗。感谢您的补充。
    猜你喜欢
    • 1970-01-01
    • 2013-01-24
    • 2015-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-27
    • 1970-01-01
    • 2022-01-01
    相关资源
    最近更新 更多