繁体   English   中英

将特殊字符从 R 导出到 excel/csv

[英]Exporting special characters from R to excel/csv

我在 R 中有一个包含特殊字符的向量,例如x = "Köln"

我无法将其导出回 excel 或 csv 格式(最好在 Excel 中)。

这是我尝试过的:

`#Exporting to excel
library(excel.link)
myExcelProcess = COMCreate("Excel.Application")
xl.workbook.add()
excelRange = myExcelProcess[["ActiveSheet"]]$Range("A1:A1")
xl.write(x, excelRange, row.names = FALSE) # this creates an excel file with "ruined" characters (Köln)`

#Exporting to csv write.csv(x = routesCities, file = "out.csv", fileEncoding = "UTF-8") # This creates a csv containing "Koln" - the Umlaut has disappeared.

任何帮助将不胜感激。

编辑(关于标记为可能的重复):恕我直言,这个问题与建议的重复有很大不同,因为它指的是 R 和 Excel 之间数据传输期间的编码问题,而不是无法运行write.xlsx()函数。 此外,我的尝试不会导致错误(没有错误消息),但结果不是预期的。 相同的答案(使用不同的库)也可能适用于这里,但问题本身却大不相同。

作为readr一部分的readr包有一个函数write_excel_csv ,它以 UTF-8 编码将数据帧导出到 csv,这样直接在 excel 中打开它们就可以保留特殊字符。 虽然我没有进行过详尽的尝试,但我在导出带有“大于或等于”符号 ≥ 的数据时遇到了类似的问题,在字符串变量中表示为字符串 \≥。 它完美地使用了这个函数,即使我之前尝试使用write.csv ,即使使用选项“fileEncoding =“UTF-8”,在excel中打开时仍然在文件中留下奇怪的符号。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM