让以下载体:
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不以科学计数法显示它们?
答案 0 :(得分:6)
您可以通过File->Open
打开csv文件,而不是在Excel中转到Data->From Text
,最后一步指定Column data format
为Text
。
虽然不能确保通过这样做节省时间,但您也可以考虑使用WriteXLS
(或其他一些直接到xls)包。
修改强>
Here's一种强制Excel以文本形式阅读的更好方法:
write.csv(paste0('"=""', y, '"""'), 'y.csv', row.names = F, quote = F)
答案 1 :(得分:1)
在Excel中,选择数字列,并将其格式化为文本。 (格式化单元格 - &gt;数字标签 - &gt;左侧列表中的文字)