更新:Alist.dirs
该功能已添加到修订版 54353 中的基础包中,该版本包含在 2011 年 4 月发布的 R-2.13.0 中。
list.dirs(path = ".", full.names = TRUE, recursive = TRUE)
所以我下面的函数只能用几个月。 :)
我找不到基本的 R 函数来执行此操作,但使用以下方法编写自己的函数将非常容易:
dir()[file.info(dir())$isdir]
更新:这是一个函数(现已更正蒂莫西·琼斯的评论):
list.dirs <- function(path=".", pattern=NULL, all.dirs=FALSE,
full.names=FALSE, ignore.case=FALSE) {
# use full.names=TRUE to pass to file.info
all <- list.files(path, pattern, all.dirs,
full.names=TRUE, recursive=FALSE, ignore.case)
dirs <- all[file.info(all)$isdir]
# determine whether to return full names or just dir names
if(isTRUE(full.names))
return(dirs)
else
return(basename(dirs))
}