iPython notebook + R (IRKernel) をセットアップする
iPython notebook + IRKernelでiPythonでrを動かす手順。
そこそこ面倒だし、若干不安定(ggplot2はエラーメッセージが出るみたい)だけど
使えるは使えるのでこんな感じでRのサンプルコードをgithubに公開したいってときには非常に便利かと。
XCode commandline tools をインストール
Terminalから以下のとおり。
xcode-select --install
インストーラのウィンドウが開くので、手順にそってインストール。
Homebrew インストール
まだ入ってなかったら
まずはHomebrew をインストールする。
Homebrewは、mac用のパッケージマネージャ。
コマンドラインからpythonやらemacsやらgitやら必要なものを一通り入れられるので
macで開発するには必須(だと思う)。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Press RETURN to continue or any other key to abort ==> /usr/bin/sudo /bin/chmod g+rwx /usr/local/sbin /usr/local/share/man/man8 Password:
と聞かれたら、macのログインパスワードを入力してしばし待つ。
無事完了した場合は以下のとおり。
==> Installation successful! ==> Next steps Run `brew help` to get started
これでインストールは完了。
今後homebrewでいれたコマンドなどをmacのデフォルトより優先して使うためにパスを通す。
Yosemiteでは(前からだっけ)~/.bash_profileや~/.bashrcがデフォルトで存在なくなっているので、注意。
まあ以下のとおり実行すればOK。なければ.bash_profileを新規作成します。
echo "" >> ~/.bash_profile echo "# set PATH for Homebrew packages" >> ~/.bash_profile echo "export PATH=/usr/local/bin:\$PATH" >> ~/.bash_profile # 読み込み source ~/.bash_profile
以上、Homebrew。
iPython インストール / アップデート
インストールは以下の記事に沿って、Anacondaをとりあえず入れるのが良いと思う。qiita.com
iPythonでpython以外の言語(のkernelのGUIでの切り替え)を使うために
iPythonとiPython notebookとついでにipython-qtconsoleを3以降にアップデートしておく。
conda update ipython ipython-notebook ipython-qtconsole
The following packages will be UPDATED: (中略) Proceed ([y]/n)?
などと出るので、yを打ち忘れないように。
完了したら
ipython --versionを実行して
3.1.0
と出れば良い。
Rインストール
R本体
Homebrewで入れられる。gfortranを直接入れる手順は古いので注意。
2015/5/22現在、rのパッケージがgcc49に依存しているので、以下のとおりインストール。
コンパイルが走るので、激しく時間がかかる(そのうち普通のgccで良くなると思う)。
もしかするとオフィシャルサイトから落としたほうが早いかも。
brew update brew tap homebrew/science brew install gcc49 --with-fortran brew install r
Rstudio.app
Rstudioを入れたかったらbrew caskを入れて、インストール
brew install caskroom/cask/brew-cask brew cask install rstudio # Applicationsフォルダの中ににシンボリックリンクを貼る ln -s ~/Applications/RStudio.app /Applications/
初期設定
.Rprofile作成・CRANミラー設定
Rの初期設定ファイルは~/.Rprofile。
R用ライブラリのレポジトリCRANのミラーのアドレスをとりあえず設定しておく
echo 'options(repos="http://cran.md.tsukuba.ac.jp")' >> ~/.Rprofile
ホームディレクトリにLibrary用のディレクトリを作る。
Cavertsでも触れられているが、homebrew でアップデートしたときに
デフォルトの設定だとR上で追加したRのライブラリが使えなくなる模様。
mkdir -p ~/Library/R/3.2/library
また、こうしておくとRにてlibrary()関数でインストール済みライブラリを確認した時に
> library() パッケージ (ライブラリ ‘/Users/user/Library/R/3.2/library’ 中): base64enc Tools for base64 encoding パッケージ (ライブラリ ‘/usr/local/Cellar/r/3.2.0/R.framework/Versions/3.2/Resources/library’ 中): base The R Base Package boot Bootstrap Functions (Originally by Angelo Canty for S) ・・・
というような感じで、自分で入れたライブラリが明確にみえるので良い。
もしくは、自分の好きなディレクトリを使いたいときは
.Rprofileに以下の設定を入れる。
.libPaths(c("/opt/RLibrary", .libPaths()))
上の例では/opt/RLibraryがLibraryの読み込み元に追加される。
IRKernel (ipython notebookでrを使うためのライブラリ)
やっと本題のIRKernelを入れましょう。
以下の公式サイトの手順だけではうまくいかなかった。
まずは依存ライブラリを入れる必要がある。
Rのコンソールから
install.packages(c('base64enc', 'evaluate', 'jsonlite', 'uuid', 'digest'))
Homebrewから入れているせいかも。
あとは公式サイト通りの手順。
install.packages(c('rzmq','repr','IRkernel','IRdisplay'), repos = 'http://irkernel.github.io/', type = 'source') IRkernel::installspec()
インストールはこれで完了。マジおつか。
試してみる
ターミナルから
ipython notebook
でipython notebookを起動して、「New」からRを選べば良い。
とりあえず以上。