RではR Consoleという画面にコードを書くことで処理がなされます。
これはMS-DOSのコマンドラインみたいなもので、いわゆる「一行プログラム」のような環境ですので、大規模コードの実行には向いていません。
そこでCやVBなどと同様に、ソースコードを書くエディタとR実行環境(RConsole)、そしてエディタからR実行環境にコマンドを送る橋渡し機能をつけるなどした統合環境が重宝されることとなります。
このような統合環境としては Mac用の R Studio、Windows用の TinnR、EZR等があります。これにNotePad++&NPPtoRが有力です。
R Studio
これはMac用です。エディタ、コンソール、データ、図が1画面に表示される便利なものです。ただし、その分、エディタが狭くて不便に感じます。私はエディタとコンソールしか使わないこともあって活用できていません。そもそも当社は Windows 環境ですのでここでは省略します。
NotePad++
私がRに限らず多用途に使用しているWindows用テキストエディタです。
何十万件ものCSVの場合、Excelで開くのが大変ですが、NotePad++は起動が早いのでちょっとした確認ならこちらを使用しています。世界的に使用されているため、いろいろなバージョンが出回っています。日本語環境に適合したものが良いですから、下記バージョンなどはいかがでしょうか。
www.vector.co.jp
インストールが済んだら、
まず、設定 > スタイル設定 >フォント名 として日本語フォント(MS ゴシック等)を選びます。
続いて、設定 > 環境設定 >新規作成ドキュメントとして、フォーマットはWindows、エンコードはUTF-8を選びます。
ネットやAS400などとデータをやり取りするためには文字エンコードが問題となります。当社の場合、他社様からいただくデータを開こうとして「文字化けしている」と騒ぐ人がいる場合にはたいていはこの文字エンコードが原因です。UTF-8でエンコードされているものをSHIFT-JISで開こうとしているようです。
NppToR
Notepad++ はテキストエディタですので、このままではRの実行はできません。
Notepad++ を R のエディタとして使用し、必要に応じて RConsoleにコマンドを送ってくれるようにするのが、NppToRです。
sourceforge.net
NppToRがインストールされると、Notepad++でコーディングしたあと、実行したい部分を選択してF8を押せば,カーソルがある行がRConsoleに送られて実行されます。
Notepad++のバージョンとの整合性の関係か、うまくインストール出来ない場合には古いバージョンを試してみることをお薦めします。
Notepad++が起動するとタスクバーの通知領域にアイコンが入るはずです。そのアイコンを右クリックして「settings」を選びます。
設定項目 | 意味 |
---|---|
R Home | NpptoRと連携するRの保管フォルダ ここではEasyRとしてあります。 |
Notepad++ Config Directory | Notepad++の保管フォルダ |
参考
Notepad++ with NpptoR
NPPtoRはR言語対応のシンタックスハイライト機能、Rの言語対応自動文法補正機能を Notepad++に追加する。
TinnR
NotePad++&NpptoRではハイライトが不十分と感じるようなところも、TinnRはR専用ということでシンタックスハイライトはきれいです。
Latexも配慮されているのでより本格的に使う人には良いかもしれません。
sourceforge.net
Rコマンダー
私はSASやSPSSを使用していましたが、これらは高額だけあって、GUIで操作しやすくなっています。R自体はCUIのようなもので初心者にはとっつきにくいと思います。そんな悩みに対応したのがRcmdrというGUI環境です。スクリプトウィンドウ、出力ウィンドウ、メッセージボックスからなり、やりたいことをメニューから選んでいくとスクリプトが自動的に生成されるようになっています。こちらはCRANから追加するRパッケージとなっています。 CRAN - Package Rcmdr Rコマンダーは拡張性にも優れているため、次に挙げるEZRはRコマンダーをカスタマイズしたもののようです。
EZR
RをGUIで実行する環境の日本版です。
マウスでやりたいことを選んでいくと、Rの解析コードが自動的に生成されます。初めのうちはEZRでコード作法を学んでいくようにすると良いと思います。
www.jichi.ac.jp
ソースや出力をMarkdownで自動生成してくれるのでブログに上げるのも楽かもしれません。
