如何从分支文件夹位置列出数据文件和数据路径?

How can I make a list of data files and data paths from branched folder locations?

我在以下文件路径结构中有来自 3 个人的数据:

p1/ p2/ p3/ 

上面的每个里面都有文件夹a/b/,每个文件夹都包含我需要处理的通用命名的数据文件datafile.txt

我需要将数据标识符和位置加载到格式列表中:

p1
"p1/a/"
p1
"p1/b/"
p2
"p2/b/"
p3
"p3/a/"
p3
"p3/b/"

我遵循的教程文档使用称为 sapply 的东西来导航文件系统,并且该示例不适应分支数据位置。我是 R 的新手,所以遇到了麻烦。

如果你必须有一个列表(而不是向量),并假设 myDirp1p2p3 所在的路径,那么

tmp = dirname(list.files(myDir, recursive = T))
dirs = as.list(tmp)
names(dirs) = dirname(tmp)
dirs

$p1
[1] "p1/a"

$p2
[1] "p2/a"

$p2
[1] "p2/b"

$p3
[1] "p3/b"

如果你真的想要一个向量,那么

dirs = dirname(list.files(myDir, recursive = T))
names(dirs) = dirname(dirs)
dirs
p1     p2     p2     p3 
"p1/a" "p2/a" "p2/b" "p3/b"