解析包含R中多个部分的文本文件

Parsing a text file containing multiple sections in R

我有一个包含 130 table 的文本文件,由分隔符 ' DLM' 分隔。我尝试在 R 中使用包 reader 并定义默认分隔符如下,但它仍然读取整个文件。

reader::reader("Path_to_file.txt", def= "\' DLM'", one.byte = FALSE)

是否可以解析文件并只读取特定于 table 名称的行?例如,如果我指定'B2',我是否可以只读取table B2 的行?我似乎无法解决 reader 中的分隔符问题。感谢您的帮助!

示例数据集:

'A1',2018,10,'655033655206 1',,,81,
'A1',2019,4,'655033655206 1',,,63,
'A1',2011,1,'655034655045 1',.03486,.05829,52,


' DLM','B2',2011,1,'5BON AQUA TP',361239,161,,,0,
'B2',2001,1,'5BON AQUA TN',361240,161,22.7,4.97,0,
'B2',2002,1,'5CON FIRE TN',363240,161,22.7,4.97,0,


' DLM','C1','CGDF09',
'C1','W XYZ',
'C1','A BCD',

也许尝试删除定界符,然后检查哪一行以 'B2' 开头? 您可以使用 stringi 包中的此功能:

stri_startswith_fixed(c("A1,1,2,3","B2,3,4,5","C2,3,,5"), "B2")
# [1] FALSE  TRUE FALSE