我有一个.csv文件,其中包含正确和误读的重音字符。例如,在第一行我有“Veríssimo”,在第二行我有“Virgí-nia”(本来应该是Virgínia)。如果我什么都不做,它会打开一个拼写错误的“Virgínia”文件。如果我尝试一种我知道的纠正方法,比如用UTF-8编码保存文件,那么“Veríssimo”就拼错了。
在R中,我尝试:dados_MG2 <- read_csv("dados_MG.csv")
检测UTF-8编码,打开时“Veríssimo”拼写错误。dados_MG <- read_csv("Dados/extra/dados_MG.csv", locale = locale(encoding = "ISO-8859-1"))
我尝试强制使用不同的编码,使用它,“Veríssimo”拼写正确,但“Virgínia”不正确。
以下是我的数据集链接:https://github.com/elisa-fink/THM
2条答案
按热度按时间yvfmudvl1#
您可以使用
nchar
查找包含无效UTF-8字符的字符串,并将其替换为使用ISO-8859-1编码读取的字符串:一个更简单的变体,只阅读一次CSV文件(* 灵感来自 *@rps1227的答案 *):
mspsb9vt2#
另一个选项只需要阅读文件一次,并使用
base::iconv()
转换原始文件中未使用UTF-8编码的名称:创建于2023-09-04使用reprex v2.0.2