fread和引用的多行列值

时间:2014-01-08 21:14:39

标签: r csv data.table fread

> fread('col1,col2\n')
Empty data.table (0 rows) of 2 cols: col1,col2
> fread('col1,col2\n5,4')
   col1 col2
1:    5    4
> fread('col1,col2\n5,"4\n3"')
Error in fread("col1,col2\n5,\"4\n3\"") : 
  Unbalanced quote (") observed on this line: 3"
> 

只要跨越多行的值包含在引号中,read.csv就可以导入此csv。

是否应该可以导入它?使用read.csv实际上对我的用例很好。我可以将结果数据帧转换为数据表。但我只是想确保没有这个功能是一个设计决定,而不是那些尚未测试的东西。

1 个答案:

答案 0 :(得分:5)

更新:现已在GitHub的v1.9.3中修复:

  
      
  • fread()现在接受引用字段内的换行符。感谢Clayton Stanley的突出表现。
  •   



此错误已在之前报告过,并且在列表中可以执行。但是这里的新内容是引号内的\ n。我没有意识到这是一个导致错误的用例。

非常感谢您的报道。它将被修复。

类似的问题,但在这里不完全相同:

data.table::fread and Unbalanced "

并且错误报告在这里:

https://r-forge.r-project.org/tracker/?group_id=240&atid=975&func=detail&aid=2694