web-dev-qa-db-fra.com

Comment se débarrasser des messages d'avertissement après l'installation de R?

La sortie suivante peut être obtenue après l'installation de R par homebrew et sans dans mon OSX:

During startup - Warning messages:
1: Setting LC_CTYPE failed, using "C"
2: Setting LC_COLLATE failed, using "C"
3: Setting LC_TIME failed, using "C"
4: Setting LC_MESSAGES failed, using "C"
5: Setting LC_MONETARY failed, using "C"         # this line is not occurring in OSX 10.10.1 Yosemite but other four are.

J'ai trouvé un question existant mais la solution ne fonctionne pas pour moi. je fais ça

  1. Terminal ouvert
  2. Écrivez ou collez: defaults write org.R-project.R force.LANG en_US.UTF-8
  3. Fermer le terminal
  4. Démarrer R

et les messages d'avertissement sont toujours affichés. Je suppose que cela fonctionne lors de l'installation de R à l'aide du package de la page de projet R.

Comment se débarrasser de ces messages d'avertissement après l'installation de R dans OSX?

20
Jan Deinhard

Pour R, c'est ce qui a fonctionné depuis le terminal

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

Voir Installation de R sur Mac - Messages d'avertissement: échec de la configuration de LC_CTYPE, en utilisant "C"

12
peter_v

Problème: Les variables locales indiquant quel codage utiliser ne sont pas définies. Pour voir le problème, dans Terminal, tapez locale, et vous obtenez probablement quelque chose comme

LANG=
LC_COLLATE=
LC_CTYPE=
LC_MESSAGES=
LC_MONETARY=
LC_NUMERIC="en_US.UTF-8"
LC_TIME=
LC_ALL=

LC_NUMERIC peut ou non être défini, mais étant donné vos erreurs, le reste n'est pas défini ou défini sur quelque chose que R ne peut pas utiliser. Si ces variables sont vides, R va se plaindre. Pour résoudre le problème:

Option 1: Préférences du terminal Accédez aux Préférences du terminal. Sous l'onglet "Avancé", assurez-vous que "Encodage de texte" est réglé sur "Unicode (UTF-8)" (ou tout ce dont vous avez besoin). Assurez-vous que la case en dessous de "Définir les variables d'environnement locales au démarrage" est cochée. La décocher a tendance à laisser les variables locales non définies ou en "C", sauf si vous avez modifié .bash_profile, .bashrc ou .profile (selon votre système). Cela peut suffire à résoudre votre problème. Si non:

Option 2: Définir à partir de R Pour les définir depuis l'intérieur de R, tapez

R> Sys.setenv(LANG="en_US.UTF-8")
R> Sys.setenv(LC_ALL="en_US.UTF-8")

... qui devrait définir toutes les variables dont R se plaint.

Option 3: Définir à partir du terminal Pour les définir à partir du terminal, saisissez

export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8

... qui devrait définir le reste des variables dont R se plaint.

Vérifier: Dans Terminal, tapez à nouveau locale. Tu devrais obtenir

LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL="en_US.UTF-8"

Redémarrez R et vous devriez être réglé.

9
alistaire

Mettez ce qui suit dans votre $ HOME/.bashrc

export LANG=en_US.UTF-8

Il semble que pour une raison quelconque, le $ HOME/.profile ne provient pas du démarrage du terminal.

Par rapport à la réponse d'alistaire, j'ai seulement changé la variable LANG sur mon fichier ~/.profile:

export LANG=en_US.UTF-8

Ensuite, redémarrez la session du terminal (ou source ~/.profile) et c'est parti.

2
Francesc Vila

J'ai ouvert Préférences Système/Langue et région et sélectionné États-Unis comme ma région, tous les avertissements ont disparu.

2
Ignacio