R:有没有办法从跳过某些(不规则)行的文件中读取 data.table?

R: Is there a way to fread data.table from file where some (irregular) lines are skipped?

这是名为 'log.txt' 的示例数据文件(当然,实际上该文件包含更多行):

148     87      40
148     80      47
126     65      49
-
127     57      53
134     64      52
-
136     72      51
128     72      49

R/data.table 中有没有办法从那里读取所有行?

如果我们 运行 dt <- fread("log.txt"),我们得到错误:

Error in fread("log.txt") : 
   Expected sep (' ') but new line, EOF (or other non printing character) ends field 0 when detecting types from point 0: -

另一方面,如果我们删除所有“-”,我们的文件 ("log1.txt") 将如下所示:

148     87      40
148     80      47
126     65      49

127     57      53
134     64      52

136     72      51
128     72      49

然后,当我们 运行 dt <- fread("log1.txt") 时,它只读取前三行,并带有警告:

  Warning message:
  In fread("log1.txt") :
     Stopped reading at empty line 4 but text exists afterwards (discarded): 127     57      53

感谢弗兰克, 解决方案:

第 1 步:将应跳过的行设为空白(使用外部编辑器),然后

第 2 步:运行fread(text, blank.lines.skip=TRUE)