R - 检查目录是否存在,如果不存在则创建
目录和子目录在 R 编程语言中通过它们对应的路径访问。在 R 中使用这些很容易,并在系统内执行与文件夹和子文件夹的创建、复制和移动相关的操作。在本文中,我们将看到如何使用 R 编程语言检查目录是否存在以及如果目录不存在如何创建新目录。
使用目录:
检查目录是否存在
主目录对应的路径可以先存放在工作空间中。我们可以使用 file.exists()方法检查此目录是否存在。此方法返回一个逻辑向量,描述其参数指定的文件是否存在于空间中。如果文件存在,则返回 TRUE,否则返回 FALSE。
Syntax: dir.exists(paths)
Parameter:
path – a character vector containing a single path name.
例子:
R
sub_dir<-"test1"
file.exists(sub_dir)
R
# setting up the main directory
main_dir <- "C:\\Users\\Vanshi\\Desktop\\gfg\\test"
# setting up the sub directory
sub_dir <- "abc"
# check if sub directory exists
if (file.exists(sub_dir)){
# specifying the working directory
setwd(file.path(main_dir, sub_dir))
} else {
# create a new sub directory inside
# the main path
dir.create(file.path(main_dir, sub_dir))
# specifying the working directory
setwd(file.path(main_dir, sub_dir))
}
输出:
TRUE
如果目录不存在则创建目录
如果文件存在,则工作目录设置为分别由主目录和子目录连接形成的路径。否则,将使用dir.create()方法创建目录。此方法返回一个逻辑向量,描述为尝试创建的每个文件是否成功创建文件。如果目录已经存在,dir.create 表示失败。
Syntax: dir.create(path, showWarnings = TRUE, recursive = FALSE, mode = “0777”)
Parameter :
- path – a character vector containing a single path name.
- showWarnings – logical; should the warnings on failure be shown?
- mode – the mode to be used on Unix-alikes.
例子:
电阻
# setting up the main directory
main_dir <- "C:\\Users\\Vanshi\\Desktop\\gfg\\test"
# setting up the sub directory
sub_dir <- "abc"
# check if sub directory exists
if (file.exists(sub_dir)){
# specifying the working directory
setwd(file.path(main_dir, sub_dir))
} else {
# create a new sub directory inside
# the main path
dir.create(file.path(main_dir, sub_dir))
# specifying the working directory
setwd(file.path(main_dir, sub_dir))
}
输出: