我正在尝试使用以下命令读取制表符分隔文件:
df <- read.table("input.txt", header=FALSE, sep="\t", quote="", comment.char="",
encoding="utf-8")
应该有30 million
行。但是,在read.table()返回后,df只包含约600万行。并且有一条警告信息如下:
警告讯息:
In read.table("input.txt", header = FALSE, sep = "\t", quote = "", :
incomplete final line found by readTableHeader on 'input.txt'
我相信read.table
在其中一个字符串列中遇到特殊的问号(ASCII code: 1A Substitute)
后退出。在输入文件中,唯一的特殊字符是tab,因为它用于分隔列。无论如何要求read.table将任何其他角色视为不特别?
答案 0 :(得分:0)
如果你有3000万行。我会使用fread
而不是read.table。它更快。详细了解http://www.inside-r.org/packages/cran/data.table/docs/fread
fread(input, sep="auto", encoding = "UTF-8" )
关于read.table的问题。我认为这里的解决方案应该解决它。 'Incomplete final line' warning when trying to read a .csv file into R