我运行的分析产生了大约500个名为file1到file500的文件
但是,缺少某些文件(例如file233和file245以及其他文件)。我想在R中的循环中进一步处理它们但是我需要过滤掉不存在的文件。
是否有一种简单的方法可以将文件后面的数字存储在R中的矢量中,然后我可以将其用于循环?
v<-containing all numbers after file which are present in the directory
应该提到文件没有结尾.txt但只是名称fileXX,其中XX是数字
答案 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