【发布时间】:2015-03-29 16:33:04
【问题描述】:
我有如下 CSV 文件:
data,key
"VA1,VA2,20140524,,0,0,5969,20140523134902,S7,S1147,140,20140523134902,m/t",4503632376496128
"VA2,VA3,20140711,,0,0,8824,20140601095714,S1,S6402,175,20140601095839,m/t",4503643113914368
我尝试用 R 读取它,但我不需要 key 值,应该将 data 值读取到单独的列中。使用以下代码,我几乎得到了我需要的东西:
data <- read.csv(fileCSV, header = FALSE, sep = ",", skip = 1, comment.char = "", quote = "")
我在那里跳过标题行 (skip = 1),说我没有它 (header = FALSE),并说我没有引号 (quote = "")。但结果我在 V1 和 V13 列以及额外的 V14 列中得到引号字符:
V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 V13 V14
1 "VA1 VA2 20140524 NA 0 0 5969 2.014121e+13 S7 S1147 140 2.014121e+13 m/t" 4.503608e+15
我应该在阅读 csv 后以某种方式删除它吗?或者,有没有更好的方法来读取此类 csv 文件?
更新。我使用以下方法来删除引号:
data[,"V1"] = sub("^\"", "", data[,"V1"])
data[,"V13"] = sub("\"$", "", data[,"V13"])
但是对于这些列,factor 类型更改为 character。
【问题讨论】: