将数字向量作为字符导出为CSV

时间:2013-06-28 18:33:42

标签: r excel csv export export-to-csv

让以下载体:

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不以科学计数法显示它们?

2 个答案:

答案 0 :(得分:6)

您可以通过File->Open打开csv文件,而不是在Excel中转​​到Data->From Text,最后一步指定Column data formatText

虽然不能确保通过这样做节省时间,但您也可以考虑使用WriteXLS(或其他一些直接到xls)包。


修改

Here's一种强制Excel以文本形式阅读的更好方法:

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

答案 1 :(得分:1)

在Excel中,选择数字列,并将其格式化为文本。 (格式化单元格 - &gt;数字标签 - &gt;左侧列表中的文字)