R语言导出CSV出现乱码的处理

本文介绍了如何在R语言中使用haven和readstata13包打开stata文件,并解决在保存为csv时出现的乱码问题。通过设置fileEncoding参数为'GB18030',成功避免了乱码,推荐使用readstata13包的方法。
摘要由CSDN通过智能技术生成

今天领导在网上的免费数据库下载了一个数据包,打开一开dta后缀名,查询后发现是stata软件处理的文件。然而手上只有R,最近在学习这个,所以搜索了下。有两种方法可以打开。

方法一:使用haven数据包

install.packages("haven")
library(haven)
data <- read_dta("C:/Users/Desktop/xxx.dta")

 方法二:使用readstata13数据包

install.packages("readstata13")
library(readstata13)
mydata <- read.dta13("C:/Users/xxx.dta")

最后在保存成csv文件格式时候出现的了乱码。

save(data,file="C:/Users/Desktop/3.csv")

 

搜到网上的解决方法是用 write.csv,这是搜索方法二是给出的保存方式,想必这个函数依赖方法二的readstata13这个包。而且出现乱码可能是因为windows默认的文字格式ASN码,而R语言默认的编码方式是UTF-8。

代码如下:

write.csv(mydata,"C:/Users/Desktop/2.csv", fileEncoding = "GB18030")

结果打开后很完美

 个人强烈建议用第二种方法。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值