現在の「R」の開発環境
「R」と言えば、対話型コンソールのRStudioが主な開発環境ですが、Pythonのツールやライブラリが搭載されたフリーソフトである「Anaconda」上でもRは使用することができ、Rもデータ分析用ツールである「JupyterNotebook」上でノートブック形式でコーディング作業を行うことができるので、その方法を解説していきます。
RをJupyterNotebookでノート形式で便利に使う
まずはWindowsのスタート画面から「Anaconda Navigetor」を起動して開きます。デフォルトの開発環境は「root」になっていますが、Anacondaの便利なところは環境を簡単に構築&切り替えができるという点になります。(pyenvの方がちゃんと区別できる云々の細かい話はまた今度・・・)
たくさんツールがあって分かりにくいですが、ざっと説明すると、まず「Jupyter Notebook」、こいつはノートブック形式の開発ツールです。コンソールだと実行したコードはログになって触ることはできませんが、「JupyterNotebook」では実行したコードをそのまま弄れるので、殴り書きみたいな感じでプログラムを実行できるので非常に使い勝手がいいです。基本的な使い方は↓の記事に書いています。
現在「JupyterNotebook」の開発は終了し、「Jupyternotebook」の左にある「Jupyterlabs」が後継ツールであり最新版です。「Jupyterlabs」は超便利なのですが、開発途上で仕様がコロコロ変わるので今は様子見してます。今はとりあえず「JupyterNotebook」でも十分コーディング作業が捗るので問題ないです。
「Spyder」はPythonの総合開発環境対話型コンソールです。RstudioのPython版みたいな感じです。複数のpyファイルを同時に弄れるので、簡単なpyファイルのスクリプトのデバッグやDjanagoでのWeb開発、ライブラリ開発で使います。他にも↑の画像には写っていませんが「VSCode」もあるので、javascriptやhtmlを同時に触るときはそっちで良いかと思います。
そして、RstudioはRstudioです。Anacondaに搭載されているので、Anacondaをインストールしていればわざわざインストールする必要はありません。Anacondaの外でインストールしたRstudioしているとたまにですが、不具合が起きる可能性があります。起きたらアンインストールして再起動しましょう。
そして、一通りツールを把握したら次は「Environment」タブを開き、画面下部にある「Create」で新たにRとPythonが使用できる開発環境を構築します。
環境名は適当に名前を付けてください。ここでPython3.6(2019年現在)とRの両方にチェックマークを付けてください。
環境構築は時間が掛かるので、気長に待ちましょう。↓の画像の下部のInstall作業が終われば使えるようになります。
環境構築のインストール作業が終わったら、「JupyterNotebook」をLaunchをクリックして起動します。起動画面して出てくるファイル群は全部のファイルなので、変なファイルがあるなーと迂闊に消すと面倒なことになるので気を付けてください。そして、「JupyterNotebook」で新規にノートブックを作るためには、まず画面右上の「NEW」のタブを開いてください。
すると環境構築の時にPythonとRにチェックボックスを付けていれば、RとPythonどちらのっ言語環境のノートブックを作るかを選択できます。今回は「R」がメインなので、Rを指定します。
すると、新規にノートブックが作成されて↓のような画面に切り替わります。右上にRのアイコンがありますね。ノートブックの名前はUntitiledの部分をクリックすると自由に編集することができます。
本当にRの環境か確かめるために、Rに標準搭載されている機械学習でお馴染みのアヤメのデータセット「iris」を呼び出してみます。
こういう感じでちゃんと呼び出すことができました。Rstudioよりもこっちのほうがデザインがいいですし、自分は好きですね。
まとめ
こんな感じでJupyterNotebookはPythonだけではなく、Rも使えます。自分はPythonだけでなくRでデータ分析をするときもRstudioではなく基本は「JupyterNotebook」上でやっています。
こんな感じでRでもPythonのツールを使えるよーって記事でしたが、やはり最近Pythonは言語云々というよりライブラリや周辺環境が異常に整備されているので、やはりPythonの方が使用する機会は多くなってきています。
ただまあRはRでPythonにはないニッチなデータ分析用ライブラリがあるので、まあ基本はPython、高度で細かいところはRというような感じかなと思います、まあ最近は置き換えが進んでいますし、Rも悪い言語ではないと思うのですが、とにかくPythonの勢いが凄いです。
コメント