読者です 読者をやめる 読者になる 読者になる

Knowledge As Practice

JAIST(東京)でサービス経営の研究をしている社会人大学院生の研究・勉強メモ(統計分析多め)。

RStudio より軽くてサクサク。Sublime で R コンソールと連携

ノンプログラマーのためのR入門

【追記 2016年4月26日】
sulibme text3 で R-box が動くという情報をいただいています。 コメント欄をご参照ください。

【追記 2016年3月24日】
私の環境(windows10, sublime text3)ではうまく動いていません。
現在はRstudio 使ってます…。


このブログの統計分析については、いっしょに学べる仲間・先輩・上司がいるような「プロ環境(?)」にいる方ではなくて、普段は孤独に、もしくは趣味的に楽しくRと格闘している非ITエンジニアな方(つまりは自分なんですけど)向けに書いています。

 
さて先日、RStudio で日本語の扱いが変になってしまいました。変数の中に日本語が入っていると、落ちてしまうのです。変数名をローマ字にしても、変数の中に日本語があればダメ。少し前までは平気でした。ひょっとしたら、Windows10 へのアップグレードのせいかな…。 f:id:hikaru1122:20151030154617p:plain

 
原因はわからないですが、快適な分析環境に身をおきたいので、RStudio 以外の環境を作ることにしました。以前のエントリーで、Sublime を使おうとしたところ挫折したことの再チャレンジです。

 
Sublime Text から R を使うのには「Sublime REPL」を使う方法がよくネット上で紹介されています。例えば、こちらの2つです。 weathercook.hatenadiary.jp www.kevjohnson.org

 
Sublime REPL から R を使う方法は2つあります。1つは、Sublime の画面を2つに割って、片方に R コンソール、もう片方にコードを書くようにして、書いたコードをRコンソールに渡すという流れです。↓な感じ。 f:id:hikaru1122:20151030154524p:plain

 
もう1つは画面分割せずに Sublime 内で R を実行するだけ。どの方法も日本語の扱いにはまったく問題ありません。しかし、Sublime REPL は画面分割したとき動きがちょっと不安定で、書いたコードを隣のRコンソールに渡す時のショートカットキーがうまくいかないときがあります。画面分割しないと、エディタを使う意味ないし…。

 

R-Box を使う方法がある!

というわけで、違う方法を探しました。結果として、R-Box というプラグインを導入することで、RStudio よりもサクサク動く環境を作ることができました。Sublimeプラグイン導入方法や設定などは他ページをご覧ください。例えば↓。

http://keidrun.tumblr.com/post/73033053898/tipssublime-text-sublime-text

 
R-Box 導入後、Sublime のメニューで「 Preferences → Package Settings → R-Box →Settings - Users」で R-Box の設定ファイルを適切なものに書き換えます。R のプログラムがある場所を適切なものにするだけです。私の場合はこんな感じ。バックスラッシュは2つ必要です。

{
    "R64": "C:\\Program Files\\R\\R-3.2.2\\bin\\x64\\Rgui.exe",
    "prog": "R64"
}

 
Rを使うときは、Sublime の画面の右下にある「Plain Text」をクリックして「R-Box→R Extended」を選択。

f:id:hikaru1122:20151030154553p:plain

 
適切なコードを書いて、RStudio と同じように「Ctrl+Enter」をすると、R コンソールが現れて、実行されます。こんな感じ。 f:id:hikaru1122:20151030154451p:plain

 
日本語変数名・変数は問題ありません(いまのところ)。動作も機敏です。ちょっと不便なのは、read.delim("clipboard") が使えないことです。手抜きせず read.csv() とかを使えばOKです。めでたし、めでたし。しばらくはこれでやってみます。

でも、早く RStudio の不具合が解消して、日本語が普通に使えるようになればいいな。

 

【追記】
1.「軽くてサクサク」は起動のスピードのことを指しています。サクサクの表現は、さっと使いたいときにさっと使える私の気持ちです。わかりづらくてスミマセン。
2.r-wakalang で質問したときは、RStudio でほぼ問題なく日本語を使える方がいらっしゃいました。今回の問題は、私が使っているデータが原因かもしれません。

クリエイティブ・コモンズ・ライセンス
この 作品 は クリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスの下に提供されています。