中文乱码,也许这个小技巧可以帮到你

我们都知道R对中文是真的很不友好。即使把encoding设置成UTF-8还是GBK等,它有时不听话的还是依旧乱码。有人说在设置里面把默认字符集编码设成utf-8,不过试了,没用!

比如我原本数据是左边这种这个样子,读到R里面却成了右边这个样子。这该情何以堪啊,我待R如初恋,R却虐我千万遍。

中文乱码,也许这个小技巧可以帮到你_第1张图片

虽然在Linux系统下使用Libreoffice calc打开时,可以选择字符集类型,只要选择合适的字符是不会乱码。

但在R里面按照在这选择的字符集,有时还会乱码。比如那个GB-18030,试了,还会乱码。这个时候是不是很令人捉鸡啊。

中文乱码,也许这个小技巧可以帮到你_第2张图片

今天就给大家推荐一个比较暴力的方法,这也是我最近才发现的

中文乱码,也许这个小技巧可以帮到你_第3张图片

nodepad++这个软件大家应该不会太陌生吧。我的方法就是使用该软件对文件编码进行转换,步骤分别为:点击文件右键—>edit with nodepad++ —>全选—>格式—>转为UTF-8编码格式—>保存

中文乱码,也许这个小技巧可以帮到你_第4张图片

这时候文件编码也就转换为utf-8了。再使用R读取文件时将encoding设为utf-8即可,乱码的问题就这么简单的解决了。

该方法对.txt.csv文件可以使用,不适用于Excel文件,即.xlsx 和.xls,因此在使用的时候需要注意一下,以免造成数据文件被破坏,因此建议在使用该方法进行文件编码转换前做好文件备份

如果你有什么好的方法,欢迎在留言区分享。

注:

作者:王亨

公众号:跟着菜鸟一起学R语言

原文链接:http://blog.csdn.net/wzgl__wh/


你可能感兴趣的:(R语言,杂谈)