在 Rstudio 中解决项目根目录

2023-11-23

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

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

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

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

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


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

setwd(“~/NateProjects”)

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

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

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

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

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

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

  • 您可以在项目目录中创建一个项目文件(扩展名为 .Rproj)。该文件包含各种项目选项(如下所述),也可以用作直接从文件系统打开项目的快捷方式。
  • 您创建一个隐藏目录(名为 .Rproj.user),其中存储项目特定的临时文件(例如自动保存的源文档、窗口状态等)。如果需要,此目录还会自动添加到 .Rbuildignore、.gitignore 等。
  • 将项目加载到 RStudio 中并在“项目”工具栏(位于主工具栏的最右侧)中显示其名称
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Rstudio 中解决项目根目录 的相关文章

  • 无法更新/编辑从 R 中的包(`gratia`)导出的 ggplot2 对象

    我希望我在这里遗漏了一些令人痛苦的明显的东西 我希望更新 例如 修复标题 实验室等 由 生成的 ggplot 对象gratia draw 不太确定为什么我无法更新该对象 有一个简单的解决方案吗 devtools install github
  • rpart“as.character(x) 中的错误:无法强制类型 'builtin' 为类型 'character' 的向量”消息是什么意思?

    我一直在用头撞rpart几天了 尝试为我拥有的这个数据集制作分类树 我认为现在是时候询问生命线了 我确信这是我没有看到的愚蠢的事情 但这里是我一直在做什么 EuropeWater lt read csv file paste Users a
  • R、Rcpp 与 Armadillo 中矩阵 rowSums() 与 colSums() 的效率

    背景 来自 R 编程 我正在扩展到 C C 形式的编译代码Rcpp 作为循环交换 以及一般的 C C 效果的实践练习 我实现了 R 的等效项rowSums and colSums 矩阵的函数Rcpp 我知道它们以 Rcpp 糖的形式存在 并
  • R中的字典数据结构

    在 R 中 我有 例如 gt foo lt list a 1 b 2 c 3 如果我输入foo I get a 1 1 b 1 2 c 1 3 我怎样才能看透foo仅获取 键 列表 在这种情况下 a b c R 列表可以具有命名元素 因此可
  • 将字符串列拆分为多个虚拟变量

    作为 R 中 data table 包的相对缺乏经验的用户 我一直在尝试将一个文本列处理为大量指示符列 虚拟变量 每列中的 1 表示特定的子字符串是在字符串列中找到 例如我想处理这个 ID String 1 a b 2 b c 3 c 进入
  • 使用 R 下载压缩数据文件、提取和导入数据

    EZGraphs 在 Twitter 上写道 很多在线 csv 都被压缩了 有没有办法下载 解压缩存档并使用 R 将数据加载到 data frame Rstats 我今天也尝试这样做 但最终只是手动下载 zip 文件 我尝试过类似的东西 f
  • purrr::可能函数可能无法与map2_chr函数一起使用

    我怀疑这是 purrr 包中的错误 但想先在 StackOverflow 中检查我的逻辑 在我看来 possibly功能在内部不起作用map2 chr功能 我正在使用 purrr 版本 0 2 5 考虑这个例子 library dplyr
  • 访问或解析 R 中的 summary() 中的元素

    我运行以下 R 命令来进行 Dunnett 测试并获取摘要 如何访问下面线性假设的每一行 这是摘要输出的一部分 基本上我不知道摘要的结构 我尝试使用名称 但它似乎不起作用 因为我没有看到任何命名属性来提供这一点 library multco
  • 不同编程语言中的浮点数学

    我知道浮点数学充其量可能是丑陋的 但我想知道是否有人可以解释以下怪癖 在大多数编程语言中 我测试了 0 4 到 0 2 的加法会产生轻微的错误 而 0 4 0 1 0 1 则不会产生错误 两者计算不平等的原因是什么 在各自的编程语言中可以采
  • 成功安装 Composer,但消息显示:必须设置 HOME 或 COMPOSER_HOME 环境变量才能使 Composer 正确运行

    我已经在 Ubuntu vagrant box 上安装了 Composer 正在运行php 7 0 在此之前刚刚安装 简单地尝试一下composer 或完整路径php usr local bin composer两者都会导致以下错误 The
  • picker输入字体或背景颜色

    我在闪亮的仪表板中使用 pickerInput 这很好 除了一个问题 背景颜色和字体颜色太相似 使得过滤器选择难以阅读 有什么办法可以改变背景或字体颜色吗 如果可能的话 我想继续使用 pickerInput 但如果有一个带有 selectI
  • 多个动态滤镜更新闪亮

    我希望能够让 UI 输入闪亮 并根据用户之前的选择进行自我更新 因此 在下面的示例中 预期的行为是用户选择cyl vsor carb那么这将 过滤数据集mtcars用于创建绘图 即用户根据过滤条件调整绘图并 更新其他过滤器中的剩余输入选择
  • 我可以使用哪个 R 函数来查找两条线的交点?

    我刚刚研究了 stackoverflow 上所有的 在 R 中寻找交集 问题 它们要么是关于曲线 要么是关于分布像这个 https stackoverflow com questions 20519431 finding point of
  • `as.matrix` 和 `as.data.frame` S3 方法与 S4 方法

    我注意到定义as matrix or as data frame作为 S4 类的 S3 方法 使例如lm formula objS4 and prcomp object 开箱即用 如果它们被定义为 S4 方法 则这不起作用 为什么将方法定义
  • 行对名称中具有特定模式的列求和

    我有一个像这样的数据表 DT lt ata table data table ref rep 3L 4L nb 12 15 i1 c 3 1e 05 0 044495 0 82244 0 322291 i2 c 0 000183 0 155
  • 如何按定义的顺序将图像合并到一个文件中

    我有大约 100 张图像 png 我不想手动执行此操作 而是希望将它们按照定义的顺序 基于文件名 并排放置在一个 pdf 中 每行 12 个图像 有人有什么建议吗 我按照下面托马斯告诉我的方法尝试了 它把它们贴在旁边有一个黑边 我怎样才能去
  • 在ggplot中设置y轴中断

    我在代码中设置中断时遇到困难 我尝试添加breaks seq 0 100 by 20 但似乎无法让它正常工作 本质上我希望 Y 轴从 0 到 100 每 20 个刻度一次 YearlyCI lt read table header T te
  • R:按组,测试一个变量的每个值是否存在于另一个变量中

    我有一个数据框架 结构如下 a lt c 1 1 1 2 2 2 3 3 3 3 4 4 b lt c 1 2 3 1 2 3 1 2 3 4 1 2 c lt c NA NA 2 NA 1 1 NA NA 1 1 NA NA df lt
  • R中IF函数的使用

    我正在短跑ifR 中的函数 但收到以下警告消息 In if runif 50 0 1 lt 0 69 the condition has length gt 1 and only the first element will be used
  • ggplot:如何限制条形图中的输出,以便仅显示最频繁出现的情况?

    我几个小时以来一直在寻找这个简单的东西 但没有结果 我有一个数据框 其中一列为变量 国家 地区 我想要两件事以下 绘制最常见的国家 地区 最常见的位于顶部 找到部分解决方案EDIT找到完整的解决方案 gt gt 重点问题是根据频率限制条形图

随机推荐

  • Ruby 单元测试:这是有效的(格式良好的)XML 文档吗?

    我正在创建一个 XML 文档 我想进行单元测试 至少确保其格式良好 到目前为止 我只能通过使用 REXML 库中的 hasElements 来近似这一点 有没有更好的办法 最好使用内置库 我的意思是标准 Ruby 1 8 x 发行版附带的库
  • eax 在 pt_regs 结构中的哪里?仅存在斧头

    我正在尝试使用pt regs用于获取和设置寄存器的结构 例如eax 但是编译错误告诉我pt regs没有该成员eax 但是 我能够得到ax登记 谁能告诉我发生了什么事吗 我正在使用 32 位 Ubuntu linux3 0 0核心 再次感谢
  • 检查数组中是否存在对象

    我有一个包含多个人物对象的数组 该对象如下所示 id 1 name Max Muster email email protected language German 现在 我在另一个数组中找到了对象 它们看起来并不完全相同 id 1 nam
  • 如果 Alamofire 图像中存在磁盘缓存图像,则使用磁盘缓存图像

    我正在使用阿拉莫火图像库来缓存下载的图像 Code import UIKit import AlamofireImage class ViewController UIViewController IBOutlet weak var fir
  • 如何让 Spoon 为 Espresso 测试截图?

    我一直在努力追随有关让 Spoon 1 1 14 为失败的 Espresso 测试截取屏幕截图的说明 配置此功能的最佳方法是什么自定义 Espresso FailureHandler 这是我目前正在做的事情 public class Mai
  • 阅读 WP8 上的 SSL 证书详细信息

    出于安全原因 我想阅读证书详细信息 例如到期日期或 CN 通常网络类中有一些可用的属性 允许检查证书 WP8 实现中缺少此功能 我还尝试创建一个 SslStream 但也无法获取任何证书详细信息 例如远程证书在 net 4 5 上 var
  • jQuery Mobile 更改下拉所选选项并刷新它

    我正在编写 jQuery 移动应用程序 我正在通过以下语句更改下拉选择的选项 DataBaseNames val db 我确信传递了正确的数据库值 因为我通过警报检查了它 当我深入下拉菜单时 它还显示所选的正确文本 但下拉菜单本身未显示所选
  • 将文件流式传输到 Pylons 中的 HTTP 响应

    我有一个 Pylons 控制器操作 需要将文件返回给客户端 该文件位于网络根目录之外 因此我不能直接链接到它 当然 最简单的方法是 with open filepath rb as f response write f read 这可行 但
  • 使用 pandas.DataFrame.interpolate 将行添加到 DataFrame

    我有一个具有以下格式的 Pandas 数据框 Frequency Value 1 10 2 8 2 20 2 5 3 30 2 2 4 40 2 3 我想用pandas DataFrame interpolate为了在频率 35 处添加一条
  • 为什么我的 vim 不知道我的别名?

    我使用了 alias ruby ruby1 9 1 所以我可以用这个执行我的 ruby 红宝石 123 rb or 红宝石1 9 1 123 rb 但在我的 vim 中 我使用 ruby 并得到 bin bash ruby 找不到命令 我必
  • 如何避免 Vscode 中将头文件放在与 src 不同的目录中时出现错误

    好吧 我在 VSCode 中遇到了错误问题 基本上我决定重新组织并将我的头文件移动到一个单独的文件夹 include 中 我的目录简单如下 build include SDL2 SDL2 Image someHeaderFile1 h so
  • 导致 java.lang.IllegalStateException: Post Too Large in tomcat / mod_jk 的原因

    为了增加允许的最大帖子大小 需要调整哪些配置以及它位于哪里 Apache Tomcat 默认情况下对其接受的 HTTP POST 请求的最大大小设置限制 在 Tomcat 5 中 此限制设置为 2 MB 当您尝试上传大于 2 MB 的文件时
  • PHP 非阻塞函数

    我有一个项目 其中用户通过表单上传图像 服务器则执行一些缩略图 缩略图制作过程非常慢 因此我认为使用非阻塞函数调整图像大小可能是一个很好的解决方案 我的意思是 服务器处理表单 有更多字段 向用户提供 ok 反馈 然后调用缩略图功能 我怎样才
  • 为什么切换服务器后 Laravel 会话在 Safari 和 IE 中会失败?

    带有 Webmin Apache Centos 6 Laravel 应用程序和旧数据库架构的新 VPS 服务器 在旧的共享主机上一切正常 但在 VPS 上由于某种原因 Laravel 的会话存储 Laravel 3 0 不再在 Safari
  • 有没有简单的方法来突出面膜?

    如果我有像这样的面具 我有一个图像 大小与面具相同 就像 我想突出显示图像中的蒙版 如果我用其他语言 我只是 正如你所看到的 结果图像有一个透明红展示面具 我希望在 OpenCV 中实现这一点 所以我写这段代码 include
  • Erlang 消息可以发送哪些类型?

    主要是想知道能不能发function在分布式 Erlang 设置中的消息中 在机器 1 上 F1 Fun gt hey end gen server call on other machine F1 在机器 2 上 handler call
  • 如何在 Android ImageView 上添加标记/图钉?

    我想问如何在 imageView 上实现或添加标记 我使用 svglib 渲染了 SVG 并使用了 customImageView 以便我可以缩放和平移图像 这是我如何使用 customImageView 的代码 Override publ
  • WinForms 文本框的“KeyPress”事件丢失?

    我正在尝试在文本框 WinForm 中添加 KeyPress 事件 this textBox1 KeyPress new System Windows Forms KeyPressEventHandler CheckKeys 这是 Chec
  • 如何使用 Newtonsoft Json.Net 反序列化接口

    我有这个类层次结构 public class ProxyBotsSnapshotLogEntryDetails IBotsSnapshotLogEntryDetails public ICollection
  • 在 Rstudio 中解决项目根目录

    当您在 RStudio 中打开或创建项目时 工作目录会自动更改为项目的目录 但是 如果您要保存文件或在其他子目录中工作 则更改工作目录通常会很方便 在每个脚本中管理这一点可能会很痛苦 是否有一个始终指向项目根目录的变量 也可由 Knit H