如何阅读包含中文字符的CSV文件?

时间:2016-08-17 02:33:31

标签: r csv character-encoding

我的电脑的信息如下,

 > sessionInfo()
  R version 3.3.1 (2016-06-21)
  Platform: x86_64-apple-darwin13.4.0 (64-bit)
  Running under: OS X 10.11.5 (El Capitan)

  locale:
  [1] zh_CN.UTF-8/zh_CN.UTF-8/zh_CN.UTF-8/C/zh_CN.UTF-8/zh_CN.UTF-8

  attached base packages:
  [1] stats     graphics  grDevices utils     datasets  methods   base     

  loaded via a namespace (and not attached):
  [1] tools_3.3.1

我想通过

将csv文件读入我的Rstudio
dat <- read.csv("e.csv", fileEcoding = "utf-8")

CSV文件是这样的,

enter image description here

我收到了一个错误,

> dat
  postal_code province
1          10        p

结果只是一个1 * 2的数据框。

1 个答案:

答案 0 :(得分:2)

chinese <- data.frame(Postal=c(10,20,30),Province=c('中','華','民族'))
write.csv(chinese, "chinese.csv",row.names = F)

dat <- read.csv("chinese.csv")
dat # Here it is in Unicode
  Postal         Province
1     10         <U+4E2D>
2     20         <U+83EF>
3     30 <U+6C11><U+65CF>

如果您仍有问题,请提供您的数据,我们可以提供进一步的帮助。

另一个相关的例子:

x=c('中華民族');x; y <- data.frame(x, stringsAsFactors=FALSE) 
y
                                 x
1 <U+4E2D><U+83EF><U+6C11><U+65CF>
x
  

[1]“中华民族”