将数据导入 R 并跳至关键字

Import data into R and skip till keyword

我有一个气相色谱仪的输出文件,格式为 .txt,header 长度不同。如何在不手动 selecting/deleting header 的情况下将数据读入 R?该文件如下所示。 到目前为止,我尝试了不同的方法(grep 等)来找到文件中“[Chromatogram (Ch1)]”或 "R.Time (min) Intensity" 的位置,然后才从那里开始读入。虽然没有成功。 如果能提供一些有关如何执行此操作以及如何跳过最后两行的建议,我将不胜感激。

此致, 玛德琳


Header 
Header
...
(differing in length between files)
...
Header 
Header
[Chromatogram (Ch1)]
Interval(msec)  40
of Points   4500
Start Time(min) 0.000
End Time(min)   2.999
R.Time (min)    Intensity
0.00000 -320
0.00067 -320
0.00133 -320
0.00200 -320
0.00267 -320
0.00333 -321
0.00400 -321
0.00467 -321
...
2.99800 363
2.99867 362
2.99933 360
[Fraction Collection Report]
# of Fractions  0

一个可能的解决方案是先读入文件,然后使用 grepl 过滤掉 headers。例如:

lines <- readLines(input.txt)
lengthOfHeaders <- max(which(sapply(lines, function(line) grepl("R.Time", line))) - 1)
input <- lines[-(1:lengthOfHeaders)]