如何在Linux上的rstudio中阅读中文 [英] How to read chinese in rstudio on Linux

查看:572
本文介绍了如何在Linux上的rstudio中阅读中文的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在rstudio在Linux系统上读取中文文件时遇到了问题。



错误如下。

  dt<  -  read.csv(file =/home/..../aa-0912.csv,header = T,sep =,)

make.names(col.names,unique = TRUE)中的错误:
在< be>< ba>< b5>< c3>< c8& < cb>'

这个csv文件是由rstudio写的Window系统w / o指定的编码,如下:

  write.csv(file =/home/.../aa-0912.csv,data) 

我可以在窗口上正确读取,但是当我在我的Linux系统上复制这个文件read.csv
不起作用。



Linux上的语言环境为:

  Sys.getlocale()

[1]LC_CTYPE = en_US.UTF-8; LC_NUMERIC = C; LC_TIME = en_US.UTF-8; LC_COLLATE = en_US.UTF-8; LC_MONETARY = en_US.UTF-8; LC_MESSAGES = en_US.UTF-8; LC_PAPER = en_US.UTF-8; LC_NAME = C; LC_ADDRESS = C; LC_TELEPHONE = C; LC_MEASUREMENT = en_US.UTF-8; LC_IDENTIFICATION = C

Window上的语言环境是:
LC_COLLATE = English_United States.1252; LC_CTYPE = English_United States.1252; LC_MONETARY = English_United States.1252; LC_NUMERIC = C; LC_TIME = English_United States.1252



我试图通过encoding =utf-8读取数据,但我得到了类似的错误信息。



任何帮助?

解决方案

我不确定这是答案



我会尝试尽可能一般,以便在任何语言中遇到麻烦的人都可能有解决方案:



首先在终端 local -a local将显示系统上的所有可用区域设置。



一旦您找到区域设置,然后在RStudio上找到该区域设置:

  Sys.setlocale(LC_ALL,fr_FR.utf8)

在我的系统上有任何中文区域设置。其他人遇到了相同的问题:此处此处



?Sys.setlocale 在R中。


I encountered an issue when read the chinese file on Linux system by rstudio.

The error as below.

dt <- read.csv(file = "/home/..../aa-0912.csv", header = T , sep=",")

Error in make.names(col.names, unique = TRUE) : 
  invalid multibyte string at '<be><ba><b5><c3><c8><cb>'

This csv file is written by rstudio on Window system w/o specified encoding, as below:

write.csv(file = "/home/.../aa-0912.csv", data)

And I can read correctly on window but when I copy this file on my Linux system the read.csv doesn't work.

The locale on Linux is :

Sys.getlocale()

[1] "LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=en_US.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C"

The locale on Window is :
LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252

I am trying to read data by encoding="utf-8" but I got the similar error message.

Any help?

解决方案

I'm not sure that this is the answer to your question.

I'll try to be as general as possible so that people having trouble in any language might have a solution:

First in the terminal local -a local would display all the available locales on your system.

Once you found the locale the right locale then on RStudio:

Sys.setlocale("LC_ALL","fr_FR.utf8") 

Sorry I don't seem to have any Chinese locale on my system. Other people have had the same issues: here and here

have also a look at ?Sys.setlocale in R.

这篇关于如何在Linux上的rstudio中阅读中文的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆