读取包含特殊字符的长标题行的csv文件

时间:2017-11-18 15:56:23

标签: r csv data.table

我正在尝试使用命令tri2016 <- fread("TRI_2016_US.csv")读取我从Here下载的毒性释放清单(TRI)csv文件,但它给出了关于丢弃第1行太少或太多的警告项目是列名或数据。

然而,tri2016_1 <- read.csv("TRI_2016_US.csv")读取它而没有给出任何错误和正确的列名!使用tri2016_1 <- fread("TRI_2016_US.csv", header=TRUE)仍会生成警告,但仍会忽略标题。

TRI文件有108列,标题行包含特殊字符。列表列在Pdf file中(第7页的附录A)。

有没有办法让fread读取这些csv文件和标题?  或者我应该坚持tri2016 <- as.data.table(read.csv("TRI_2016_US.csv"))而不担心它?

2 个答案:

答案 0 :(得分:1)

标题行似乎有一个尾随逗号(比其他行多一个) - 使用TRI_2016_US.csv - 111列进行测试。

如果删除它,问题应该解决。

答案 1 :(得分:0)

尝试使用readr包。

library(readr)
tri2016_1 <- readr::read_csv("TRI_2016_US.csv")

你会收到警告

Warning messages:
1: Missing column names filled in: 'X112' [112] 
2: In rbind(names(probs), probs_f) :
  number of columns of result is not a multiple of vector length (arg 1)