MacへのRのインストール-警告メッセージ:「C」を使用したLC_CTYPEの設定に失敗しました


212

ラップトップMac OS Xバージョン10.7.3にRをインストールしたい

最後のバージョンをダウンロードしてダブルクリックしてインストールしましたが、起動すると次のエラーが表示され、インターネットで検索しましたが、問題を解決できませんでした。

エラーは

起動時-警告メッセージ:
1:「C」を使用してLC_CTYPEの設定に失敗しました
2:「C」を使用してLC_COLLATEを設定できませんでした
3:「C」を使用してLC_TIMEを設定できませんでした
4:「C」を使用してLC_MESSAGESを設定できませんでした
5:LC_PAPERを設定しています失敗、「C」を使用
[R.app GUI 1.50(6126)x86_64-apple-darwin9.8.0]

警告:UTF8以外のロケールを使用しているため、ASCII文字のみが機能します。R for Mac OS X FAQ(ヘルプを参照)セクション9を読み、それに応じてシステム設定を調整してください。[/Users/nemo/.Rapp.historyから復元された履歴]

macos  r  install 

3
ああ、私はちょうどターミナルのデフォルトでorg.R-project.R force.LANG en_US.UTF-8を書き込んだ後、それを解決しました(メッセージやエラーはありません)データをインポートする方法について別の質問がありますか?データがデスクトップにあり、txtで保存されている場合など、どこにデータをコピーすればよいですか?どのようにインポートできますか?


@AbhishekGayakwad(彼に感謝)によって提供されるリンクは、以下の答えを説明しています。
Unheilig 2015

回答:


452
  1. オープンターミナル
  2. 書き込みまたは貼り付け: defaults write org.R-project.R force.LANG en_US.UTF-8
  3. ターミナルを閉じる(RStudioウィンドウを含む)
  4. スタートR

6
これは私にも有効です。ありがとう! cran.r-project.org/bin/macosx/...
Bhoom Suktitipat

53
この背後で実際に何が起こっていますか?
WoooHaaaa 2013

1
ありがとう!@Masiはいそうです!マシさんに加えて、CRANリポジトリからインストールすることを強くお勧めします。cran.r-project.org/mirrors.html自分に合ったミラーを選択してから、インストールするパッケージを選択してください。これはかなり簡単なはずです。幸運を!
宿敵

12
私のシステム(OS X 10.11 ElCapitán)では、環境変数がLANGあり、ターミナル(ファイル内)にLC_ALL設定さen_US.UTF-8れて~/.bash_profileおり、コマンドラインRはそれらの警告メッセージを表示しません。R Studioにはあります。R Studioがシステム設定>言語と地域の設定を使用していることがわかりました。私のシステムでは、言語は英語、地域はスペインです。これはen_ES、システムでサポートされていないロケールにつながります。次のコマンドを使用して、Mac R Studioに特定の設定を設定できることがわかりました。defaults write org.rstudio.RStudio force.LANG en_US.UTF-8
RamónGil Moreno '26

1
@RamónGilMorenoRプロジェクトの言語を設定すると、RとR Studioの両方の問題が解決されるようです。だから私はそれがより良いアプローチだと思います。
Yongwei Wu

71

端末でロケールを設定すると、問題が解決しました。ターミナルを開いて

  1. ロケール設定がないかどうかを確認する

    > locale
    LANG=
    LC_COLLATE="C"
    LC_CTYPE="UTF-8"
    LC_MESSAGES="C"
    LC_MONETARY="C"
    LC_NUMERIC="C"
    LC_TIME="C"
    LC_ALL=
  2. 編集~/.profileまたは~/.bashrc

    export LANG=en_US.UTF-8
    export LC_ALL=en_US.UTF-8
  3. . ~/.profileまたは. ~/.bashrcを実行して、ファイルから読み取ります。

  4. 新しいターミナルウィンドウを開き、ロケールが正しく設定されていることを確認します

    > locale
    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"

あなたは私の日を作りました、それはsupport.rstudio.com/hc/communities/public/questions/…
Islam El

Rスクリプトを実行してosxのbashでプロットsvgするとRscript、次の警告が表示されます。解決策:export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8解決策:Bhoom Suktitipat Sys.setenv(LC_ALL="en_US.UTF-8")の回答に続いてスクリプトで書くと、すべてがうまくいきます。
Nick Dong

2
zshを実行している場合は、を編集する必要があることを追加できます~/.zshrc
cbrnr 2018

これは私の端末のロケールを変更しませんでした。変更のみが~/.bash_profile正しく機能しました。Apple.stackexchange.com/a/51038/257940の
MichaelChirico

この解決策は私にとっても同様に機能し、Manjaro Linuxではロケールの不足に関するコード警告が表示されました(端末からRを実行することで問題ありませんでした)。
Waldir Leoncio、

26

R(ソフトウェア)を開き、コピーして貼り付けるだけです

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

これがうまく機能するか、他の方法を使用してください

open(on mac): Utilities/Terminal copy and paste

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

ターミナルを閉じてR、再度開きRます。


ターミナルでの貼り付けはうまくいきませんでした。このワンライナーはうまくいきました。ユーザー権限が不足している可能性があります。
CousinCocaine

1
ユーティリティはどこにありますか?macOS Sierra 10.12.1では動作しません:( OS Xの同じ問題についてこれを確認できますか?
hhh

6

Mac端末を介してRを実行する際に少し異なる問題が見つかりましたが、リモートでUbuntuサーバーに接続しているため、ライブラリを正常にインストールできませんでした。

私が持っている解決策は、Ubuntuターミナルで使用されている「LANG」変数を見つけることでした。

Ubuntu > echo $LANG
en_US.TUF-8

Ubuntuから「en_US.TUF-8」の返信がありました。

しかし、Rセッションでは、デフォルト値として「UTF-8」を取得しました。 LC_TYPEC Setting LC_CTYPE failed, using "C"

R> Sys.getenv("LANG")
"UTF-8"

そこで、Rでこの変数を変更しようとしました。うまくいきました。

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

0

Tks ラモンギルモレノ。ターミナルに貼り付けてからR Studioを再起動するとうまくいきました
org.rstudio.RStudio force.LANG en_US.UTF-8と書き込みます

環境: MAC OS High Sierra 10.13.1 // RStudioバージョン3.4.2(2017-09-28)-「Short Summer」

エンニオデレオン


-2

Macにrがインストールされている/usr/local/bin/r場合.bash_profile、同じ問題を解決するために以下の行を追加します。

alias r="LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 r"
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.