设置分隔符';'在write.csv中

时间:2016-06-23 19:23:26

标签: r export-to-csv

我有以下代码:

myTable[i,] = strsplit(line, split=";")[[1]]
write.csv(myTable[-1,], file="episodes_cleared.csv", sep=";", row.names=FALSE, quote=FALSE)

不幸的是,分隔符仍然是',':

iEpisodeId,iPatientId,sTitle,sICPc,dStart,dEnd,bProblem

运行代码给了我:

警告讯息:

1: In write.csv(myTable[-1, ], file = "episodes_cleared.csv", sep = ";",  : attempt to set 'sep' ignored
2: In write.csv(myTable[-1, ], file = "episodes_cleared.csv", sep = ";",  :

尝试设置'sep'忽略

我做错了什么?

3 个答案:

答案 0 :(得分:8)

首先,您应该提供一个可重复的示例。

但是,如果您使用write.csv2,则默认使用分号作为分隔符。

答案 1 :(得分:5)

文档https://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html说:

  

write.csv使用"。"小数点和分隔符的逗号。

     

write.csv2使用小数点的逗号和分隔符的分号,以及某些西欧语言环境中的CSV文件的Excel约定。

     

这些包装器故意不灵活:它们旨在确保使用正确的约定来编写有效文件。尝试更改append,col.names,sep,dec或qmethod会被忽略,并显示警告。

因此它不仅默认为此分隔符,而且强制执行它。使用

write.table(data,file="data.csv",sep=",",dec = " ")

答案 2 :(得分:0)

你也可以使用带有选项“sep =;”的“fwrite”快速CSV编写器 .. details