阿拉伯语文本CSV文件导入?

Ray*_* Sp 5 r arabic character-encoding csv-import

我似乎无法深究这一点,我想阅读一个包含阿拉伯字符的csv文件,但它没有正确阅读.

这是我的sessionInfo

R version 3.2.4 Revised (2016-03-16 r70336)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United    States.1252   
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

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

other attached packages:
[1] dplyr_0.4.3 plyr_1.8.3 

loaded via a namespace (and not attached):
[1] magrittr_1.5   R6_2.1.2       assertthat_0.1 parallel_3.2.4 DBI_0.3.1           tools_3.2.4   
[7] Rcpp_0.12.4 
Run Code Online (Sandbox Code Playgroud)

我试过这个

ar <- read.csv (file.choose(),  encoding = "UTF-8") 
Run Code Online (Sandbox Code Playgroud)

还有这个

ar <- read.csv (file.choose(),  encoding = "Windows-1256")
Run Code Online (Sandbox Code Playgroud)

它对我来说没有用,我也尝试将语言环境设置为阿拉伯语,但没有运气

Sys.setlocale("LC_ALL","Arabic")
Run Code Online (Sandbox Code Playgroud)

有什么建议?

Art*_*tem 0

readLines您可以使用参数读取文件warn = FALSE,然后执行read.csv使用text设置为结果的参数执行,readLines如下所示。

\n\n

阿拉伯语.csv 内容

\n\n
LabelName,Label1,Label2,SpeciesLabel,Group,Subgroup,Species\n\xd8\xa7\xd9\x84\xd8\xaa\xd8\xb3\xd9\x85\xd9\x8a\xd8\xa9 1,Group 1,Subgroup 1,Species 1,1,1,1\n\xd8\xa7\xd9\x84\xd8\xaa\xd8\xb3\xd9\x85\xd9\x8a\xd8\xa9 2,Group 1,Subgroup 1,Species 1,1,1,1\n\xd8\xa7\xd9\x84\xd8\xaa\xd8\xb3\xd9\x85\xd9\x8a\xd8\xa9 3,Group 1,Subgroup 1,Species 1,1,1,1\n
Run Code Online (Sandbox Code Playgroud)\n\n

R代码读取csv文件

\n\n
arabic <- readLines("arabic.csv", warn = FALSE, encoding = "UTF-8")\nData <- read.csv(text = arabic)\nstr(Data)\nOutput:\n\n\'data.frame\':   3 obs. of  7 variables:\n $ X.U.FEFF.LabelName: Factor w/ 3 levels "\xd8\xa7\xd9\x84\xd8\xaa\xd8\xb3\xd9\x85\xd9\x8a\xd8\xa9 1","\xd8\xa7\xd9\x84\xd8\xaa\xd8\xb3\xd9\x85\xd9\x8a\xd8\xa9 2",..: 1 2 3\n $ Label1            : Factor w/ 1 level "Group 1": 1 1 1\n $ Label2            : Factor w/ 1 level "Subgroup 1": 1 1 1\n $ SpeciesLabel      : Factor w/ 1 level "Species 1": 1 1 1\n $ Group             : int  1 1 1\n $ Subgroup          : int  1 1 1\n $ Species           : int  1 1 1\n
Run Code Online (Sandbox Code Playgroud)\n