Rprogrammingにおけるエラー集シリーズの日本語表記問題です
皆さんはこのように日本語が文字化けしてしまった事はありませんか?
もう何が書いてあるか分かりません
こちらの対処法についてです
恐らく日本人初、つまり人類初のエラーなのではないかと自負しています(解説サイトがなかったので)
目次
目次
まず最初の対策
初歩的かつ多くの方に有効なのが、デフォルトのテキストエンコーディングをUTF-8に変更する事です
RStudioの[Tools] > [Global Options] > [Code] > [Saving]で「Default text encoding」が「UTF-8」に設定されていることを再確認してください
こちらのDefault text encodingという欄のChangeを押してUTF-8を選択しましょう
多くの方の日本語読み込みエラーの原因がこれで解決します
getOption(“encoding”)
こちらをRスクリプトで打ってUTF-8であれば問題なく変更できています
しかし今回の僕は解決しませんでした
ChatGPTに聞くと
Rが起動する際、.Rprofile
ファイルを読み込むことでユーザー設定を適用します。このファイルは複数の場所に存在する可能性があり、Rは特定の順序でこれらのファイルを探します。具体的には、Rはまずホームディレクトリの.Rprofile
を探し、次に現在のプロジェクトのディレクトリにある.Rprofile
を探します。どちらのファイルも存在する場合、プロジェクトディレクトリの.Rprofile
が優先して読み込まれます。ホームディレクトリとプロジェクトディレクトリの.Rprofileの確認方法
- ホームディレクトリの.Rprofileを確認:
- Windowsの場合、ホームディレクトリは
C:\Users\<ユーザー名>\
です。ここで<ユーザー名>
はあなたのWindowsのユーザー名です。- Mac/Linuxでは、ホームディレクトリは
/Users/<ユーザー名>/
(Mac)または/home/<ユーザー名>/
です。- ファイルエクスプローラー(Windows)やFinder(Mac)、またはファイルマネージャー(Linux)を使って、このディレクトリに
.Rprofile
ファイルが存在するか確認してください。このファイルは隠しファイルになっていることがあります。- 現在のRプロジェクトのディレクトリの.Rprofileを確認:
- RStudioで現在開いているプロジェクトのルートディレクトリに
.Rprofile
ファイルが存在するか確認してください。プロジェクトのディレクトリは、プロジェクト名の隣にあるRStudioのタイトルバーに表示されています。または、RStudioの右下にある「Files」タブを使用してプロジェクトディレクトリ内を探索できます。
これを設定すれば解決するとまず教えてくれるのですが、おそらくこれは無意味です
Global optionからCode、EncodingをUTF-8に変更する方法で事足ります
僕のエラーの原因は?
読み込みファイルのコーディングがUTF-8になっていない事が原因でした
以下の画像のように、読み込む対象のテキストファイルを見てみるとエンコードがANSIとなっています
こちらをUTF-8に変更する事で解決します
この画面にたどり着く方法がこちらです
Windows
- ファイルを右クリックし、「メモ帳」などのテキストエディタで開くを選択します。
- メモ帳でファイルを開いた状態で、「ファイル」メニューから「名前を付けて保存」を選択します。
- 「エンコーディング」のドロップダウンリストを確認することで、現在のファイルのエンコーディングを見ることができます。
macOS
- Terminalを開き、
file
コマンドを使用してファイルのエンコーディングを確認します。- コマンドは以下のようになります:
file -I <ファイル名>
- このコマンドはファイルのMIMEタイプとエンコーディングを表示します。
要するにファイルをエンコードUTF-8にして保存しなおすイメージですね
これで僕の問題は解決しました
なぜ日本語エラーが起きてしまったか
よくある「何もしていないのに壊れた」という状態です
往々にして何かはしています
1週間前までは普通に使えていました
原因は定かではありませんが今回僕が行った事をリストアップします
- Rをアップデートした(R4.3.2)
- Rstudioをアップデートした(Version: 2023.12.1+402 | Released: 2024-01-29)
- data.table::freadの読み込み関数を使った
僕が検証した限りですが、Read.csvを使っても同じようにエラーが出たので、Rのアップデートに原因があるかもしれません、知らんけど
パソコン詳しくないので有識者の方いましたら教えてください…
タグ: Rstats, エラー集