编写一个函数,该函数 returns 包含 r 中子文件夹的名称和内容的列表

Writing a function that returns a list with the name and content of subfolders in r

我正在尝试编写一个显示子文件夹名称和内容的函数。我有以下书面代码。但是,当我调用该函数时,只有子文件夹的名称是 returned.

My_file <- function (Folder_name){

  My_list <- list.files(path =  "/Users/user/Desktop/task/Data/Data")
  
return(My_list)

}

“数据”文件夹包含 2 个子文件夹“房子”和“汽车”。我希望函数 return 子文件夹的名称和每个子文件夹的内容。

例如输出应该是:

$House 

Bungalow.extension

$Car 

Porsche.extension

谢谢!

您可以在 list.files -

中使用 recursive = TRUE
My_file <- function (Folder_name) {
  My_list <- list.files(path = "/Users/user/Desktop/task/Data/Data", recursive = TRUE)
  return(My_list)
}

这个有用吗?

path =  "/Users/user/Desktop/task/Data/Data"
lapply(list.files(path), function(i) list.files(paste0(path, "/", i)))

编辑: 假设这是您当前的路径:

path = "/Users/user/Desktop/task/Data"

您想查看 Folder_namepath 中的文件夹)并获取子文件夹列表及其内容。

My_file <- function (Folder_name){
  newpath <- paste0(path, "/", Folder_name)
  lapply(list.files(newpath), function(i) list.files(paste0(newpath, "/", i)))
}

尝试My_file("Data")