【发布时间】:2015-06-11 13:06:15
【问题描述】:
我需要读取一个文本文件(以制表符分隔),该文件在某些字段中有一些回车。
如果我使用 read.table,它会给我一个错误:
line 6257 did not have 20 elements
如果我使用 read.csv,它不会出错,但会在该位置创建一个新行,将下一个字段放在新行的第一个字段中。
我怎样才能避免这种情况?我无法更改文件本身(脚本将在其他地方运行)。此外,损坏的字符串没有引号(文件中没有字符串)。一种选择是将回车读取为单个空格,或者读取为 \n,但是如何?
【问题讨论】:
-
使用参数
fill=TRUE -
fill=TRUE 只会在最后一个字段中放空格,回车后的内容仍然会转到下一行,弄乱数据。
-
抱歉 -- 误读了问题..
readLines有什么用? -
我得到一个字符串数组,而不是 data.frame。
-
重点是:读入完整的字符串,然后您可以对其进行正则表达式。
标签: r csv carriage-return read.table read.csv