使用R语言读取csv文件的时候,由于文件的字符集不同,有时往往会有乱码。
最近整理一个读取csv的方式,足以应付99%的情况。
废话少说,上代码:
# 依赖package
library(readr)
library(stringi)
# 猜测文件的字符编码格式
enc <- guess_encoding("filename.csv", n_max = 1000)[1,1, drop = TRUE]
# UTF-8格式有warning时,尝试UTF-8-BOM
df <- tryCatch(read.csv("filename.csv", fileEncoding = enc),
warning =function(e) {
read.csv("filename.csv", fileEncoding = "UTF-8-BOM")
})
参考连接:
文章介绍了使用R语言处理CSV文件可能出现的乱码问题,通过`guess_encoding`函数猜测文件编码,然后结合`tryCatch`处理可能出现的警告,尝试用UTF-8和UTF-8-BOM两种方式读取,有效解决了大部分情况下的编码问题。
6111

被折叠的 条评论
为什么被折叠?



