gpt4 book ai didi

r - 在 list.dirs 中包含模式

转载 作者:行者123 更新时间:2023-12-02 13:21:51 31 4
gpt4 key购买 nike

这肯定是一个非常新的问题,但是如何在 list.dirs 函数中包含模式?

例如list.files函数

Imagery=list.files(full.names=TRUE, recursive=TRUE, pattern= "*20m*.tif$")

返回名称中包含 20m 且扩展名为 .tif 的所有文件。

但是当我尝试将此逻辑应用于 list.dirs

directories=list.dirs(full.names = TRUE, recursive=TRUE, pattern="R10m" )

我收到此错误:

Error in list.dirs(full.names = TRUE, recursive = TRUE, pattern = "R10m") : 
unused argument (pattern = "R10m")

希望我没有遗漏一些明显的东西。我的目标是获取具有名为“R10m”的文件夹的所有目录的完整路径。我有很多文件夹,其中有很多子目录,并且大多数都有相似的结构。我只想列出那些具有此文件夹的文件,并在其中列出所有属于 tifs 的文件。我知道我可以仅使用 list.files 选项获取所需的文件,但稍后我需要目录路径和文件名作为变量。

预先感谢您的宝贵时间,

最诚挚的问候,达沃

最佳答案

三种选择:

dirs <- list.dirs()
dirs <- dirs[ grepl(your_pattern, dirs) ]

dirs <- list.dirs()
dirs <- grep(your_pattern, dirs, value = TRUE)

files <- list.files(pattern = your_pattern, recursive = TRUE, include.dirs = TRUE)
dirs <- files[ file.info(files)$isdir ]

关于r - 在 list.dirs 中包含模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46959981/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com