R语言 获取R中的目录列表

R语言 获取R中的目录列表

R编程语言中的一个目录或文件夹可能包含其他目录。可以使用R语言中的基础方法访问所有目录的列表,并以文件夹列表的形式返回。

R语言中的list.dirs()方法是用来检索指定路径中存在的目录列表的。返回的输出是一个字符向量的形式,包含指定目录路径中包含的文件名,如果没有返回任何目录,则返回null。如果指定的路径不存在,或者不是一个目录,或者无法读取,则跳过评估。

语法

list.dirs(path = ".", full.names = TRUE, recursive = TRUE)

参数

path – 主目录的路径

full.names(默认值:TRUE) – 如果设置为FALSE,只显示子目录的名称。否则,将显示整个路径。

返回: 按词法顺序排列的文件列表

使用中的目录

获取R中的目录列表

输入主目录

在R中获取目录的整个路径

当属性full.names = TRUE时返回的完整路径。如果我们设置,recursive = TRUE,目录将按层次顺序返回,从主目录路径开始,然后是子目录。然而,如果我们指定递归=FALSE,则只返回子目录。

例子

# specifying the path
main_dir <- "/Users/mallikagupta/Desktop/gfg"
  
print ("list of directories including the main directory")
  
dir_list <- list.dirs(main_dir,recursive = TRUE) 
print (dir_list)
  
print ("list of directories excluding the main directory")
  
dir_list <- list.dirs(main_dir,recursive = FALSE) 
print (dir_list)

输出

“list of directories including the main directory”

[1] “/Users/mallikagupta/Desktop/gfg”            “/Users/mallikagupta/Desktop/gfg/Interviews”

[3] “/Users/mallikagupta/Desktop/gfg/Placements” “/Users/mallikagupta/Desktop/gfg/WFH”

“list of directories excluding the main directory”

[1] “/Users/mallikagupta/Desktop/gfg/Interviews” “/Users/mallikagupta/Desktop/gfg/Placements”

[3] “/Users/mallikagupta/Desktop/gfg/WFH”

另一种方法,排除主目录是指定[-1]索引附加到list.dirs()方法中,它只返回子目录。

例子

main_dir <- "/Users/mallikagupta/Desktop/gfg"
  
print ("list of directories")
  
dir_list <- list.dirs(main_dir)[- 1]   
print (dir_list)

输出

“list of directories”

[1] “/Users/mallikagupta/Desktop/gfg/Interviews” “/Users/mallikagupta/Desktop/gfg/Placements”

[3] “/Users/mallikagupta/Desktop/gfg/WFH”

在R中获取文件夹名称

可以只检索主目录内的文件夹或目录名称。在这种情况下,我们在方法调用中设置参数 full.names = FALSE。这些名字是按字母顺序排列的。

例子

main_dir <- "/Users/mallikagupta/Desktop/gfg"
  
print ("list of directory names")
  
dir_list <- list.dirs(main_dir,full.names = FALSE, 
                      recursive = FALSE) 
  
print (dir_list)

输出

“list of directory names”

[1] “Interviews” “Placements” “WFH”

gsub()函数用于从一个字符串中替换所有匹配的模式。我们指定的模式相当于一个regex(“\\./”),它用于从完整的路径名中删除所有前面的片段,只返回路径的最后一部分,也就是文件夹名称。

语法

gsub(pattern, replacement, string)

参数

pattern – 要在字符串中找到的模式

replacement – 要替换的字符串。

例子

main_dir <- "/Users/mallikagupta/Desktop/gfg"
  
# set working director
setwd(main_dir)
  
print ("list of directories")
dir_list <- list.dirs()[- 1] 
  
# getting folder names
folder_list <- gsub("\\./", "", dir_list)  
print (folder_list)

输出

“list of directories”

[1] “Interviews” “Placements” “WFH”

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程