在 R Studio 中将当前文件的位置设置为工作目录
本文探讨了将 R 的工作目录设置为当前 .R
脚本或在 R Studio 的源代码窗格中打开的 .Rmd
文件的四种不同方法。在任何这些方法中都不需要用户干预或交互。
这使我们可以仅使用文件名访问我们可能存储在同一目录中的其他脚本文件或数据,而无需路径。在本文中,文件夹和目录这两个词可以互换使用。
使用 R Studio 的文件关联
通过右键单击或双击 .R
或 .Rmd
文件启动 R Studio 时,它会将工作目录设置为包含打开文件的文件夹。
这仅在以这种方式启动 R Studio 时有效。如果 R Studio 已在运行,并且仅通过右键或双击打开文件,则工作目录不会更改。
使用 R 项目文件
我们可以创建一个新的 R 项目并将其与包含我们的 .R
脚本或 .Rmd
文件的文件夹相关联。R Studio 将在该文件夹中创建一个 .Rproj
文件。
当我们启动 .Rproj
项目文件时,R Studio 会将工作目录更改为该文件夹。
使用 R Studio API 包获取 R Studio 中当前保存的文件路径
我们可以使用 rstudioapi
包中的 getSourceEditorContext()
函数来获取当前保存的文件路径。然后我们可以将其目录的路径设置为工作目录。
要使用此功能,我们必须先安装软件包。
示例代码:
# Check the current working directory.
getwd()
# Install the rstudioapi package if it is not already installed.
install.packages("rstudioapi")
# Load the rstudioapi package.
library(rstudioapi)
# Get the name of the directory in which the current file is located.
cur_dir = dirname(getSourceEditorContext()$path)
# Change the working directory to the directory with the current file.
setwd(cur_dir)
# Check that the working directory has changed to the directory with the current file.
getwd()
使用 this.path
包获取当前 R 文件的路径
最后,我们将使用 this.path
包来获取当前保存文件的路径。这种方法比前三种更通用;即使不使用 R Studio,它也可以工作。
方法是一样的;我们将使用 this.path()
函数获取当前文件的路径。然后我们将其目录的路径设置为工作目录。
示例代码:
# Check the working directory.
getwd()
# Install the this.path package.
install.packages("this.path")
# Load the this.path package.
library(this.path)
# Get the directory from the path of the current file.
cur_dir2 = dirname(this.path())
# Set the working directory.
setwd(cur_dir2)
# Check that the working directory has been set as desired.
getwd()
结论
使用不同的技术,我们可以将工作目录设置为包含当前 R 文件的文件夹。文件关联方法和 R Project 方法在 R Studio 中很容易使用。
rstudioapi
方法要求安装包。this.path
包适用范围更广,但需要安装该包。
相关文章
R 中具有多个条件的函数向量化
发布时间:2023/03/21 浏览次数:64 分类:编程语言
-
一项常见的数据分析任务是根据同一行的其他列使用一个或多个条件创建或更新数据框列。 如果我们尝试使用 if 语句来执行此操作,则只会使用第一行来测试条件,并且会根据该行更
在 R 中读取 xlsx 文件
发布时间:2023/03/21 浏览次数:66 分类:编程语言
-
在这篇文章中,你将会了解到两个在 R 中读取 xlsx 文件的最完整和最容易使用的库:readxl 和 openxlsx。