我正在寻找从 R 创建一个 csv ,其中没有一个值在它们周围有引号。当您在 excel 中创建 CSV 而不是在 R 中时,这似乎是常态。
以下面的例子为例:
set.seed(100)
df <- data.frame(Apples=sample(1:10, 5), Oranges=sample(1:10, 5), Bananas=sample(1:10, 5), Dates=sample(1:10, 5))
write.table(df, sep=",", row.names = FALSE)
如果您在记事本中打开它,您会看到列标题周围有引号。如果要成功将 csv 导入到另一个程序中,我需要它没有引号。
我注意到在 Excel 中重新保存 csv 会导致引号消失,但我需要避免执行此步骤。
我尝试过类似的事情col.names = noquote(colnames(LineupCSV))作为论据,write.table但没有成功。
在 R 中编写 csv 时,如何删除值周围的引号?
如果您想将数据框编写为 csv 文件而不引用值和字符串,那么您可以在quote=FALSE调用时设置参数,write.table或者如果它的包装器如write.csv和write.csv2.
set.seed(100)
df <- data.frame(Apples=sample(1:10, 5), 
                 Oranges=sample(1:10, 5), 
                 Bananas=sample(1:10, 5), 
                 Dates=sample(1:10, 5))
write.table(df, file="~/test.csv", sep=",", row.names = FALSE, quote=FALSE)
或者,您可以fwrite从data.table包中使用(至少从 1.97 开始)
fwrite(df, file="~/test2.csv")