Comment modifier les paramètres de langue dans R

109

Mes messages d'erreur sont affichés en français. Comment puis-je modifier le paramètre de langue de mon système pour que les messages d'erreur s'affichent en anglais?

étude
la source

Réponses:

114

Vous pouvez régler cela à l'aide de la Sys.setenv()fonction. Ma session R est définie par défaut en anglais, je la définirai donc en français, puis à nouveau:

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

Une liste des abréviations peut être trouvée ici .

Sys.getenv() vous donne une liste de toutes les variables d'environnement définies.

Chasse
la source
17
Cela modifie temporairement le Lang (pendant la session R). Pour le changer une fois pour toutes, vous devez ajouter la variable d'environnement à votre système et relancer RStudio pour que l'effet soit repris.
agstudy
Cette solution fonctionne bien mais lorsque je rouvre R, elle revient à ma locale (qui est l'italien).
SabDeM
1
@SabDeM - oui, en effet. Tenez compte de la note d'agstudy ci-dessus et définissez la variable d'environnement: stat.ethz.ch/R-manual/R-devel/library/base/html/EnvVar.html
Chase
30

Dans le cas de RStudio pour Windows, j'ai réussi à changer la langue en suivant les instructions trouvées dans la FAQ R pour Windows , en particulier j'ai écrit:

language = EN

à l'intérieur du fichier Rconsole(dans mon installation, c'est C:\Program Files\R\R-2.15.2\etc\Rconsole); cela fonctionne également pour la commande Rscript.

Par exemple, vous pouvez localiser le Rconsolefichier avec ces deux commandes à partir d'une invite de commande:

cd \

dir Rconsole /s

Le premier fait de la racine le répertoire courant, le second recherche le Rconsolefichier.

Dans la capture d'écran suivante, vous avez ce Rconsolefichier dans le dossier C:\Program Files\R\R-3.4.1\etc.

Vous pouvez avoir plus d'un emplacement, dans ce cas, vous pouvez modifier tous les Rconsolefichiers.

entrez la description de l'image ici

Après cela, vous pouvez ouvrir le Rconsolefichier avec votre éditeur préféré et rechercher la ligne language =, puis l'ajouter ENà la fin de cette ligne.

Dans la capture d'écran suivante, la ligne intéressante est le numéro 70 et vous devez l'ajouter ENà la fin. entrez la description de l'image ici

Alessandro Jacopson
la source
Ça ne marche pas pour moi. La modification du fichier et le réglage de la langue sur EN n'ont aucun effet sur la langue des messages d'erreur. Je peux voir qu'il serait logique que cela fonctionne, mais je suppose qu'entre-temps, Windows a plusieurs autres directives de configuration de langue (peut-être la langue du système, la disposition du clavier du système) qui interagissent de manière complexe et non transparente.
0rangez
@ 0range avez-vous essayé cd \ et dir Rconsole /safin de rechercher plusieurs fichiers?
Alessandro Jacopson le
21

Pour les utilisateurs de mac, j'ai trouvé ceci sur la FAQ R pour Mac

Si vous utilisez une configuration non standard (par exemple, une langue différente des formats), vous pouvez annuler la détection automatique effectuée en définissant le paramètre par défaut `force.LANG ', comme par exemple

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

lorsqu'il est exécuté dans le terminal, il appliquera le paramètre anglais américain quel que soit le paramètre système. Si vous ne savez pas quel Terminal est, vous pouvez utiliser cette commande R à la place:

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

mais n'oubliez pas de quitter R et de redémarrer R.app par la suite. Veuillez noter que vous devez toujours utiliser la version `.UTF-8 'de la locale, sinon R.app ne fonctionnera pas correctement.

Cela m'a aidé à changer la langue de ma console du chinois à l'anglais.

Xiang Li
la source
Confirmé comme fonctionnant pour macOS High Sierra 10.13.4 et R3.2.3 aujourd'hui
R Yoda
17

Cela fonctionne à partir de la ligne de commande:

$ export LANG=en_US.UTF-8

Aucune des autres réponses ci-dessus n'a fonctionné pour moi

Bilow
la source
si l'on exécute R directement depuis la ligne de commande, la réponse ci-dessus peut être écrite dans le .bash_profilefichier (sous Mac OS). Ensuite, tapez simplement source .bash_profilepour que la modification soit effective dans la fenêtre. obs : en supposant que pwdc'est ~, c'est à dire le répertoire personnel.
Mattia Paterna
13

Si vous utilisez Ubuntu, vous définissez

LANGUAGE=en 

dans /etc/R/Renviron.site.

Llobocki
la source
C'est vrai mais pas très utile car vous devez éditer ce fichier à partir du terminal. Pour les noobs comme moi, voici comment chercher sur Google: tapez sudo nano /etc/R/Renviron.sitedans le terminal, suivi de votre mot de passe lorsque le terminal vous le demande. Ensuite, vous pouvez modifier ce fichier directement dans le terminal. Ajoutez la ligne mentionnée par linellobocki, puis appuyez ctrl + xpour quitter. Tapez ensuite ypour confirmer que vous souhaitez enregistrer les modifications et appuyez sur Entrée pour confirmer le nom et le répertoire du fichier.
Peter Pan
Comment puis-je faire cela dans un environnement anaconda? Vous devez savoir lors de l'utilisation d'un supercalculateur, il est habituel d'installer R et les dépendances localement, et anaconda est bon pour cela, mais maintenant je dois définir la LANGUE sur `` en '' et IDK où se trouve ce fichier Renviron.site
Sergio
Cela fonctionne pour moi (terminal) mais le fichier est '~ / .Renviron.site`.
Shrek Tan
6

Vous voudrez peut-être également être conscient de la différence entre, par exemple, Sys.setenv(LANG = "ru")et 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"

Si vous souhaitez modifier le comportement des fonctions faisant référence à l'un de ces éléments (par exemple strptimepour extraire des dates), vous devez utiliser Sys.setlocale(). Voir ?Sys.setlocalepour plus de détails. Afin de voir toutes les langues disponibles sur un système Linux, vous pouvez exécuter

system("locale -a", intern = TRUE)
Giocomai
la source
5

Pour moi a travaillé:

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

Essai:

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

Travaille également pour recevoir des messages en anglais:

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

Pour réinitialiser les messages allemands que j'ai utilisés

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

Voici le début de mon 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
faire du jogging
la source
4

tapez ceci en premier: system ("par défaut, écrivez org.R-project.R force.LANG en_US.UTF-8") puis vous obtiendrez un numéro d'index (dans mon cas est 127)

puis tapez: Sys.setenv (LANG = "en") puis tapez le nombre et ENTRER 127

Emma
la source
4

Une solution simple serait de définir export Lang = C dans votre script bash. J'ai eu un problème similaire où la langue par défaut était l'allemand, donc il est revenu à l'anglais.

rakesh singh
la source
De R on peut fairesystem("export Lang=C")
jogo
C'est une bonne solution. J'utilise R en utilisant anaconda et votre solution a fonctionné pour moi.
Sergio
3

Si vous voulez changer la langue de R dans le terminal en anglais pour toujours, cela fonctionne bien pour moi sous macOS:

Ouvrez terminal.app et dites:

touch .bash_profile

Alors dire:

open -a TextEdit.app .bash_profile

Ces deux commandes vous aideront à ouvrir le fichier ".bash_profile" dans TextEdit.

Ajoutez ceci au fichier ".bash_profile":

export LANG=en_US.UTF-8

Ensuite, enregistrez le fichier, rouvrez le terminal et tapez R, vous verrez que sa langue a changé en anglais.

Si vous voulez que la langue revienne à son original, ajoutez simplement un #avant export LANG=en_US.UTF-8.

Jiang
la source
1

La seule chose qui a fonctionné pour moi a été de désinstaller complètement R (assurez-vous de le supprimer également des fichiers Programmes) et de l'installer, mais désélectionnez Traductions de messages pendant le processus d'installation. Quand j'ai installé R, puis RCmdr, il est finalement apparu en anglais.

RUser
la source
0

Dans Ubuntu 14.04 LTS, j'ai dû supprimer le #du commentaire #LANGUAGE=EN.
Toutes les autres options ne fonctionnent pas pour moi.

J_F
la source
0

il vous suffit de changer la langue de base de Microsoft sur votre ordinateur!

appuyez sur le bouton Windows avec r et inclinez le code suivant dans la fenêtre qui s'ouvre

control.exe / nom Microsoft.Language

chargez le package de langue que vous souhaitez utiliser et modifiez les options. mais attention, cela changera également la disposition de votre clavier!

utilisateur8015143
la source
0

sous Windows, lorsque vous n'avez pas de droit d'administrateur , créez simplement un nouveau raccourci vers Rgui.exe . Ensuite, dans les propriétés de ce raccourci, allez dans l'onglet 'Raccourci' et modifiez la cible pour inclure la langue système de votre choix, par exemple"C:\Program Files\R\R-3.5.3\bin\x64\Rgui.exe" LANGUAGE=en

Sébastien Wieckowski
la source
-1

J'utilise R Studio sur un Mac et je n'ai pas trouvé le fichier Rconsole. J'ai donc pris une manière plus brutale et j'ai simplement supprimé les fichiers de langue indésirables de l'application R. Il vous suffit d'aller dans votre Rapp dans le dossier de votre application, faire un clic droit, afficher le contenu du package puis / contents / Resources /. Il y a les fichiers de langue par exemple English.lproj ou dans mon cas de.lproj que j'ai supprimés. Après le redémarrage de R, les messages d'erreur s'affichent en anglais. C'est peut-être utile!

ben
la source