2017-08-17 50 views
1

多個節的文本文件我有一個包含130個表,由分隔符' DLM'分離的文本文件。我嘗試在R中使用包reader,並按如下方式定義了默認分隔符,但它仍然讀取整個文件。解析含有作爲R

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

是否可以解析文件並只讀取特定於表名的行?例如,如果我指定'B2',我可以只讀取表格B2的行嗎?我似乎無法解決閱讀器中的分隔符問題。任何幫助表示讚賞!

樣本數據集:

'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', 

回答

1

也許嘗試刪除分隔符,然後檢查其符合'B2'開始? 您可以使用此功能stringi包:

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

謝謝,這真的幫助。我能夠根據字符串匹配來解析表格。每個表格的標題必須以稍微不同的方式獲得,因爲它與分隔符「DLM」位於同一行。 –

+0

如果答案是有幫助的,你可以接受和贊成它。 :) – bartektartanus

+1

我在一個小時前接受它;我現在會贊成它:) –