将阿拉伯文本分配给R变量

Jac*_*ain 6 unicode encoding locale r iconv

R无法正确显示阿拉伯文字.当我使用阿拉伯语时,我会得到非常奇怪的东西.这是一个截图:

在此输入图像描述

问题是我想用阿拉伯语文本创建一个wordcloud,我需要先解决这个问题.

R版本:R 2.15.2 GUI 1.53 Leopard构建64位(6335)

以下是更多信息:

> options("encoding")
$encoding
[1] "native.enc"

> Encoding("????")
[1] "unknown"
Run Code Online (Sandbox Code Playgroud)

SessionInfo():

> sessionInfo()
R version 2.15.2 (2012-10-26)
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)

locale:
[1] C/C/C/C/de_DE/C

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

loaded via a namespace (and not attached):
[1] tools_2.15.2
> 
Run Code Online (Sandbox Code Playgroud)

一些修补:

> x = "?????"
> Encoding(x) = "UTF-8"
> x
[1] "<U+0645><U+0631><U+062D><U+0628><U+0627>"
> Encoding(iconv(x))
[1] "unknown"
Run Code Online (Sandbox Code Playgroud)

更多信息:

> Sys.getlocale()
[1] "C/C/C/C/de_DE/C"
> Sys.setlocale("LC_ALL", "en_US.utf8")
[1] ""
Warning message:
In Sys.setlocale("LC_ALL", "en_US.utf8") :
  OS reports request to set locale to "en_US.utf8" cannot be honored
> 
Run Code Online (Sandbox Code Playgroud)

这解决了这个问题:

Sys.setlocale("LC_ALL", "en_US.UTF-8")
Run Code Online (Sandbox Code Playgroud)

Jac*_*ain 2

这有效:

Sys.setlocale("LC_ALL", "en_US.UTF-8")
Run Code Online (Sandbox Code Playgroud)