Como alterar as configurações de idioma no R


109

Minhas mensagens de erro são exibidas em francês. Como posso alterar a configuração do idioma do sistema para que as mensagens de erro sejam exibidas em inglês?

Respostas:


114

Você pode definir isso usando a Sys.setenv()função. Minha sessão R é padronizada para inglês, então vou defini-la para francês e depois de volta:

> Sys.setenv(LANG = "fr")
> 2 + x
Erreur : objet 'x' introuvable
> Sys.setenv(LANG = "en")
> 2 + x
Error: object 'x' not found

Uma lista das abreviações pode ser encontrada aqui .

Sys.getenv() fornece uma lista de todas as variáveis ​​de ambiente definidas.


17
Isso muda o Lang temporariamente (durante a sessão R). Para alterá-lo de uma vez por todas, você precisa adicionar a variável de ambiente ao seu sistema e reiniciar o RStudio para que tenha efeito.
estudo em

Esta solução funciona bem, mas quando eu reabrir o R, ele retorna ao meu local (que é italiano).
SabDeM

1
@SabDeM - sim, de fato. Preste atenção à observação de um estudo acima e defina a variável de ambiente: stat.ethz.ch/R-manual/R-devel/library/base/html/EnvVar.html
Chase de

30

No caso do RStudio para Windows, consegui alterar o idioma seguindo as instruções encontradas no R para Windows FAQ , em particular eu escrevi:

language = EN

dentro do arquivo Rconsole(na minha instalação é C:\Program Files\R\R-2.15.2\etc\Rconsole); isso funciona também para o comandoRscript .

Por exemplo, você pode localizar o Rconsolearquivo com estes dois comandos em um prompt de comando:

cd \

dir Rconsole /s

O primeiro faz a raiz como o diretório atual, o segundo procura o Rconsole arquivo.

Na imagem a seguir, você Rconsolevê que o arquivo está na pastaC:\Program Files\R\R-3.4.1\etc .

Você pode ter mais de um local, nesse caso, você pode editar todos os Rconsolearquivos.

insira a descrição da imagem aqui

Depois disso, você pode abrir o Rconsolearquivo com o seu editor favorito e procurar pela linha language =e depois anexarEN no final dessa linha.

Na imagem a seguir, a linha interessante é o número 70 e você deve anexar ENno final dela. insira a descrição da imagem aqui


Nao funciona para mim. Alterar o arquivo e definir o idioma como EN não afeta o idioma das mensagens de erro. Posso ver que seria lógico que isso funcionasse, mas suponho que, nesse ínterim, o Windows tenha várias outras diretivas de configuração de idioma (talvez o idioma do sistema, o layout do teclado do sistema) que interagem de maneiras complexas e intransparentes.
Faixa de

@ 0range você tentou cd \ e dir Rconsole /spara procurar vários arquivos?
Alessandro Jacopson,

21

Para usuários de mac, encontrei isso nas Perguntas frequentes do R for Mac

Se você usar uma configuração não padrão (por exemplo, idiomas diferentes dos formatos), você pode substituir a autodetecção realizada definindo a configuração padrão `force.LANG ', como por exemplo

 defaults write org.R-project.R force.LANG en_US.UTF-8 

quando executado no Terminal, ele reforçará a configuração do inglês dos EUA, independentemente da configuração do sistema. Se você não sabe o que é Terminal, pode usar este comando R:

 system("defaults write org.R-project.R force.LANG en_US.UTF-8") 

mas não se esqueça de sair do R e iniciar o R.app novamente depois. Observe que você deve sempre usar a versão `.UTF-8 'do local, caso contrário, o R.app não funcionará corretamente.

Isso me ajudou a mudar o idioma do meu console de chinês para inglês.


Confirmado como funcionando para macOS High Sierra 10.13.4 e R3.2.3 hoje
R Yoda

17

Isso funciona na linha de comando:

$ export LANG=en_US.UTF-8

Nenhuma das outras respostas acima funcionou para mim


se alguém executa R diretamente na linha de comando, a resposta acima pode ser escrita dentro do .bash_profilearquivo (no Mac OS). Em seguida, basta digitar source .bash_profilepara que a alteração seja efetivada na janela. obs : assumindo que pwdé ~, ou seja, diretório inicial.
Mattia Paterna

13

Se você usar o Ubuntu, você definirá

LANGUAGE=en 

em /etc/R/Renviron.site.


Isso é verdade, mas não é muito útil, já que você precisa editar o arquivo do terminal. Para novatos como eu pesquisando no Google, aqui está como: digite sudo nano /etc/R/Renviron.siteno terminal, seguido de sua senha quando o terminal solicitar. Então você pode editar esse arquivo direto no terminal. Adicione as menções de linellobocki de linha e pressione ctrl + xpara sair. Em seguida, digite ypara confirmar que deseja salvar as alterações e pressione Enter para confirmar o nome e o diretório do arquivo.
Peter Pan

Como posso fazer isso no ambiente anaconda? Você deve saber que ao usar um supercomputador é normal instalar R e dependências localmente, e anaconda é bom para isso, mas agora eu preciso definir LANGUAGE para 'en' e IDK onde está este arquivo Renviron.site
Sergio

Funciona para mim (terminal), mas o arquivo é '~ / .Renviron.site`.
Shrek Tan

6

Você também pode querer saber a diferença entre, por exemplo, Sys.setenv(LANG = "ru")e Sys.setlocale(locale = "ru_RU.utf8").

> Sys.setlocale(locale = "ru_RU.utf8")
[1] "LC_CTYPE=ru_RU.utf8;LC_NUMERIC=C;LC_TIME=ru_RU.utf8;LC_COLLATE=ru_RU.utf8;LC_MONETARY=ru_RU.utf8;LC_MESSAGES=en_IE.utf8;LC_PAPER=en_IE.utf8;LC_NAME=en_IE.utf8;LC_ADDRESS=en_IE.utf8;LC_TELEPHONE=en_IE.utf8;LC_MEASUREMENT=en_IE.utf8;LC_IDENTIFICATION=en_IE.utf8"

Se você estiver interessado em mudar o comportamento das funções que se referem a um desses elementos (por exemplo, strptimepara extrair datas), você deve usar Sys.setlocale(). Veja ?Sys.setlocalepara mais detalhes. Para ver todos os idiomas disponíveis em um sistema Linux, você pode executar

system("locale -a", intern = TRUE)

5

Para mim funcionou:

Sys.setlocale("LC_MESSAGES", "en_US.utf8")

Teste:

> Sys.setlocale("LC_MESSAGES", "en_US.utf8")
[1] "en_US.utf8"
> x[3]
Error: object 'x' not found

Também trabalhando para receber mensagens em inglês:

Sys.setlocale("LC_MESSAGES", "C")

Para redefinir para mensagens em alemão eu usei

Sys.setlocale("LC_MESSAGES", "de_DE.utf8")

Aqui está o início do meu sessionInfo:

> sessionInfo()
R version 3.4.1 (2017-06-30)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.2 LTS

4

digite isto primeiro: system ("default write org.R-project.R force.LANG en_US.UTF-8") então você obterá um número de índice (no meu caso é 127)

em seguida, digite: Sys.setenv (LANG = "en") , digite o número e ENTER 127


4

Uma solução simples seria definir export Lang = C em seu script bash. Tive um problema semelhante em que o idioma padrão era o alemão, então ele voltou ao inglês.


De R pode-se fazersystem("export Lang=C")
jogo

Esta é uma boa solução. Estou executando R usando anaconda e sua solução funcionou para mim.
Sergio

3

Se você deseja alterar o idioma de R no terminal para inglês para sempre, isso funciona bem para mim no macOS:

Abra terminal.app e diga:

touch .bash_profile

Então diga:

open -a TextEdit.app .bash_profile

Esses dois comandos irão ajudá-lo a abrir o arquivo ".bash_profile" no TextEdit.

Adicione isso ao arquivo ".bash_profile":

export LANG=en_US.UTF-8

Em seguida, salve o arquivo, reabra o terminal e digite R , você verá que o idioma mudou para inglês.

Se você quiser que o idioma volte ao original, basta adicionar um #antes export LANG=en_US.UTF-8.


1

A única coisa que funcionou para mim foi desinstalar o R ​​inteiramente (certifique-se de removê-lo dos arquivos de Programas também) e instalá-lo, mas desmarque Message Translations durante o processo de instalação. Quando instalei o R e, posteriormente, o RCmdr, ele finalmente apareceu em inglês.


0

No Ubuntu 14.04 LTS, tive que remover o #do comentário #LANGUAGE=EN.
Todas as outras opções não funcionam para mim.


0

você simplesmente tem que alterar o idioma básico da microsoft no seu computador!

pressione o botão windows junto com r, e coloque o seguinte código na janela que é aberta

control.exe / nome Microsoft.Language

carregue o pacote de idioma que deseja usar e altere as opções. mas tome cuidado, isso também mudará o layout do seu teclado!


0

no Windows, quando você não tem direitos de administrador , apenas crie um novo atalho de programa para Rgui.exe . Em seguida, nas propriedades desse atalho, vá para a guia 'Atalho' e modifique o destino para incluir o idioma do sistema de sua escolha, por exemplo"C:\Program Files\R\R-3.5.3\bin\x64\Rgui.exe" LANGUAGE=en


-1

Estou usando o R Studio em um Mac e não consegui encontrar o arquivo Rconsole. Então, peguei um caminho mais brutal e apenas excluí os arquivos de idioma indesejados do aplicativo R. Você apenas tem que ir ao seu Rapp na pasta do seu aplicativo, clicar com o botão direito, mostrar o conteúdo do pacote e depois / conteúdo / Recursos /. Existem os arquivos de idioma, por exemplo, English.lproj ou, no meu caso, de.lproj, que excluí. Depois de reiniciar o R, mensagens de erro aparecem em inglês. Talvez isso seja útil!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.