R:应用write.csv2后丢失条目

时间:2017-05-24 20:27:36

标签: r excel csv

我的write.csv功能有问题。 我在外部csv文件中有一个DB,我通过read.csv2函数加载到R中。然后脚本执行一些规范化,之后,我通过write.csv2编写数据库。 参赛作品数量为24500。

将规范化数据库加载到另一个脚本中(再次通过read.csv2),结果只有23700个条目。同时,在Excel中,我可以看到所有24500个条目。 从Excel重新保存,并通过read.csv2在R中重新加载,结果正确(24500个条目)。

我想在尝试保存数据库时出错。

脚本草图:

#SCRIPT 1

DB <- read.csv2("DB.csv", header = TRUE, 
                na.strings = c("MISSING_VALUE", "", " ", "NA", "#DIV/0!"),
                stringsAsFactors = FALSE) #24577 entries

#normalization

write.csv2(DB, "DB.csv", quote = FALSE, row.names = FALSE) #data.frame DB contains 24577 entries

#SCRIPT 2

DB <- read.csv2("DB.csv", na.strings = "NA", stringsAsFactors = FALSE) #23787 entries

我还尝试了fwrite库中的data.table函数,但结果是一样的。

非常感谢你!

1 个答案:

答案 0 :(得分:0)

至少需要使用comment.char =&#34;&#34;来抑制注释字符处理。因为&#34; #DIV / 0的价值!&#34; 。 octothorpe是默认的R&#34; comment.char&#34;。我已经详细解释了这一点以及如何使用count.fields的其他提示:R Programming: read.csv() skips lines unexpectedly