查找目录中的文件

时间:2014-06-21 07:17:04

标签: r loops

我运行的分析产生了大约500个名为file1到file500的文件

但是,缺少某些文件(例如file233和file245以及其他文件)。我想在R中的循环中进一步处理它们但是我需要过滤掉不存在的文件。

是否有一种简单的方法可以将文件后面的数字存储在R中的矢量中,然后我可以将其用于循环?

v<-containing all numbers after file which are present in the directory

应该提到文件没有结尾.txt但只是名称fileXX,其中XX是数字

1 个答案:

答案 0 :(得分:2)

最好的方法是简单地创建一个实际存在于目录中的文件列表,比如@beginneR说:

list_of_files = list.files('/path/to/dir')

do_some_processing = function(list_element) {
    # Perform some processing and return something
}
lapply(list_of_files, do_some_processing)

如果你需要文件名中的数字,一个简单的正则表达式将会:

> grep('[0-9]', sprintf('file%d', 1:100))
  [1]   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18
 [19]  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36
 [37]  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54
 [55]  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72
 [73]  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90
 [91]  91  92  93  94  95  96  97  98  99 100
相关问题