设以下向量:
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 不以科学记数法显示它们?
最佳答案
您可以转到 Excel 中的数据->来自文本
,而不是通过文件->打开
打开 csv 文件,并在最后一步指定 列数据格式
为文本
。
虽然不确定这样做是否可以节省时间,但您也可以考虑使用 WriteXLS
(或其他直接到 xls 的程序包)。
编辑
Here's强制 Excel 以文本形式读取的更好方法:
write.csv(paste0('"=""', y, '"""'), 'y.csv', row.names = F, quote = F)
关于r - 将数值向量作为字符导出到 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17371397/