【发布时间】:2014-06-29 08:28:58
【问题描述】:
data.table 1.9.2
我正在阅读一张大表,似乎至少有一行会产生以下性质的错误:
Error in fread(paste(base_dir, filename, sep = "")) :
Expected sep ('|') but '' ends field 23 on line 190333 when reading data:...
是否可以直接在data.table 包中的 fread 跳过错误的行?
或者我将来可以通过其他方式解决此类错误吗?
【问题讨论】:
-
我不能说。但即使如此 - 如果确实如此,那么我想跳过它是一个错误的行。我意识到这可能非常困难,因为基本上需要 fread 才能知道错误行中有多少个分隔符。也许在这种情况下,我的问题的答案是否定的,但我只是想以防万一。
-
您能否发布
readLines的输出,例如,190333 行之前的 3 行和之后的 3 行?您是否在fread中指定了sep? -
count.fields()可以成为你的朋友。连同fread()中的skip和nrows参数 -
@bibzzzz 这个问题已经得到解答,或者您是否找到了替代解决方案。如果是这样,请接受任何答案或发布+接受您自己的答案或提供有关缺失内容的详细信息。
标签: r data.table fread