我有一个大 (>1GB) CSV 文件,我正在尝试读入 R 中的数据框。
非数字字段用双引号括起来,因此内部逗号不会被解释为分隔符。这很好。但是,有时条目中也会出现不匹配的双引号,例如"2" Nails"
.
解决此问题的最佳方法是什么?我目前的计划是使用像 awk 这样的文本处理器将双引号"
中的引用字符重新标记为像 pipe 这样的非冲突字符|
。我查找引用字符的启发式方法是逗号旁边的双引号:
gawk '{gsub(/(^\")|(\"$)/,"|");gsub(/,\"/,",|");gsub(/\",/,"|,");print;}' myfile.txt > newfile.txt
这个问题是相关的,但解决方案(中read.csv
的参数quote=""
)对我来说不可行,因为我的文件在引号中包含非定界逗号。