R语言base工具包中有一系列操作文件和文件夹的函数,比如读取文件目录、复制文件到文件夹、增删文件夹等。
本篇来介绍其中的读取文件目录功能,该类函数一共有三个:list.files()、dir()、list.dirs();其中前两个函数的功能完全一致。它们的语法结构如下:
list.files(path = ".", pattern = NULL, all.files = FALSE,
full.names = FALSE, recursive = FALSE,
ignore.case = FALSE, include.dirs = FALSE, no.. = FALSE)
dir(path = ".", pattern = NULL, all.files = FALSE,
full.names = FALSE, recursive = FALSE,
ignore.case = FALSE, include.dirs = FALSE, no.. = FALSE)
list.dirs(path = ".", full.names = TRUE, recursive = TRUE)
list.dirs()
先来看看参数比较少的list.dirs()函数。这个函数的功能是读取指定路径下的所有下级文件夹的路径。它有三个参数:
❝❞
path:路径名称;默认为R环境的工作路径(可通过
getwd()函数查看);full.names、recursive:默认值均为
TRUE,用法见下文示例。
这里学堂君制作了一个示例文件夹123.示例文件夹用于下面的操作,后台发送关键词「示例数据」可以获取。
list.dirs(path = "123.示例文件夹")
## [1] "123.示例文件夹" "123.示例文件夹/file1"
## [3] "123.示例文件夹/file1/file3" "123.示例文件夹/file1/file4"
## [5] "123.示例文件夹/file2"
在上面的例子中,输出结果是5个文件夹的路径信息,按名称排序:
第一个文件夹是根目录(路径)本身;
第二个文件夹是根目录下的一个子文件夹
file1;而第三、四个文件夹又是该子文件夹下的子文件夹file3、file4;第四个文件夹是根目录的另一个子文件夹
file2。
通过以上示例,可以看出该函数有如下功能:
❝❞
第一,该函数只读取文件夹路径,而不读取具体的文件路径(如csv、txt文件);
第二,它不仅会读取根目录下的一级文件夹路径,还会读取更下级的子文件夹路径。
在输出结果显示上,每个文件夹都包含根目录。如果设置参数full.names = FALSE,则会使用点号.代替根目录。
list.dirs(path = "123.示例文件夹", full.names = F)
## [1] "" &n

本文介绍了R语言工具包中读取文件目录的功能,涉及三个相关函数。阐述了各函数的参数设置、功能特点,如是否读取文件夹或文件路径、是否递归读取等。还说明了通过参数设置读取特定类型文件路径,参数遵循正则表达式语法。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



