当我试图使用data.table:fread(fn, sep='\t', header=T)读取一个csv文件时,它给出了一个“不平衡”的“不平衡”,在这一行中观察到了“错误”。数据中有3个整数变量和1个字符串变量。csv文件中的字符串不包含",而且在字符串变量中有一些包含"的行,"字符不是成对的。
我想知道是否可以让fread忽略变量中的未配对"并继续读取数据?谢谢。
下面是示例数据(只有一条记录)
N_ID VISIT_DATE REQ_URL REQType
175931 2013-3-8 23:40:30 http://aaa.com/rest/api2.do?api=getSetMobileSession&data={"imei":"60893ZTE-CN13cd","appkey":"android_client","content":"Z0JiRA0qPFtWM3BYVltmcx5MWF9ZS0YLdW1ydXoqPycuJS8idXdlY3R0TGBtU 1发布于 2013-04-19 11:46:16
更新:现在在v1.8.11中实现
来自新闻:
fread现在接受字段中间的引号(‘和"),不管字段以“是否”开头,而不是’不平衡引号‘错误#2694。感谢白道的报道。它是已知和记录在顶部?fread (文本现在删除)。如果字段以“它必须以”开头(如果字段分隔符本身位于字段内容中,则为必要)。嵌入的引号也可以出现在列名中。Newline (\n)仍然不能出现在引号字段或引用的列名中。
是的,正如@agstudy所说,由于fread是新的,嵌入式引号是一个已知的有文档记录的问题,还没有实现。严格地说,我认为这些字符串没有嵌入,因为您的示例中的字符串没有以引号开头。
不管怎么说,我把这个写成了错误报告所以不会被遗忘。在下一个版本中完成。谢谢你的高调。
https://stackoverflow.com/questions/16094025
复制相似问题