将数字向量导出为CSV

让以下vector:

x <- c(123456789123456789, 987654321987654321) y <- as.character(x) 

我试图导出y到一个csv文件,以便以后转换成XLSX(不要问,客户端要求),如下所示:

  write.csv(y, file = 'y.csv', row.names = F) 

如果我在纯文字处理器中打开y.csv ,我可以看到它正确地在元素周围插入引号,但是当我在Excel中打开它时,程序坚持将列转换为数字并以科学格式显示内容。 这需要重新格式化列的额外步骤,当处理大量文件时,这可能是一个真正的时间浪费。

如何在R中格式化20位数字的字符向量,使Excel不会以科学记数法显示它们?

通过File->Open csv文件,您可以转到Excel中的Data->From Text ,最后一步指定Column data formatText

不确定的是,通过这样做可以节省时间,还可以考虑使用WriteXLS (或其他一些直接的xls)包。


编辑

这是强制Excel读取文本的好方法:

 write.csv(paste0('"=""', y, '"""'), 'y.csv', row.names = F, quote = F) 

在Excel中,select数字列,并将其格式化为文本。 (格式化单元格 – >数字标签 – >左侧列表中的文本)