R语言导入含韩文首行的CSV文件报错“Invalid multibyte string”求助
R语言导入含韩文表头CSV文件报错的解决方法
出现"Invalid multibyte string"报错,核心原因是CSV文件的编码格式与read.csv默认使用的编码不匹配,导致韩文表头无法被正确解析。以下是几种可行的解决方法:
指定正确编码读取
韩文CSV文件常用编码为UTF-8或CP949(Windows环境下的韩文编码),直接在read.csv中通过fileEncoding参数指定:# 尝试UTF-8编码 df1 <- read.csv("dangchum.csv", fileEncoding = "UTF-8") # 如果UTF-8不行,改用CP949编码 df1 <- read.csv("dangchum.csv", fileEncoding = "CP949")使用readr包读取
readr包的读取函数对多字节字符支持更友好,默认优先处理UTF-8编码:# 先安装readr包(未安装时执行) install.packages("readr") # 加载包并读取文件 library(readr) df1 <- read_csv("dangchum.csv") # 若文件为CP949编码,指定编码读取 df1 <- read_csv("dangchum.csv", locale = locale(encoding = "CP949"))确认文件实际编码
如果上述方法都无效,可以先确认文件的真实编码:Windows环境下用记事本打开文件,点击「另存为」,在对话框底部查看当前编码;之后根据实际编码在读取时指定即可。
内容的提问来源于stack exchange,提问作者Magic Super
相关产品推荐
相关产品推荐

