しゃちの備忘録

プログラミングを中心とした技術関連の備忘録です(今のところ)

Jupyterを用いたデータ分析環境づくり

PythonのJupyterを使ったデータ分析環境の完成を目指します.

Python側の準備

Pythonでデータ分析をする上で便利な(必須 ?)なパッケージを入れて行きます. いらないものは,インストールしなければいいと思います. 今後の説明では,jupyterの話をするので最低限pip3 install jupyterしてもらえれば,いいと思います.

パッケージ名 用途
numpy 多次元配列や行列用の数学関数ライブラリ
これを使うことでPythonが本来苦手な大量のデータの取り扱いを高速に行えるようになる
pandas データ解析のために使用するライブラリ
データはこれで扱うことが多い(?)
scikit-learn 機械学習用ライブラリ
識別の要
jupyter 実行内容と結果を丸々記録できるツール
必須ではないが実行内容とメモなどを併用して取れるのであるととても便利
$ pip3 install numpy
$ pip3 install pandas
$ pip3 install scikit-learn 
$ pip3 install jupyter

jupyter notebookについて

先にあげた3つは実際の処理や計算に直結する部分なのでその時々に解説するつもりですが, Jupyterは環境そのもの(?)なので今ここで説明しておきます.

まずは適当なディレクトリを作成し,そのディレクトリ直下でjupyter notebookと入力します.

$ jupyter notebook

するといくつかメッセージが流れブラウザが自動的に立ち上がると思います. もし立ち上がらなければ,流れたメッセージの中からThe Jupyter Notebook is running at: **********のようなアドレスを見つけ出し,そのアドレスを開いてあげてください. f:id:teru0rc4:20170728151845p:plain

通常ここには,jupyter notebookを入力したディレクトリの中身が表示されます(今回はからのディレクトリを作成したのでこんな感じになっています). ここで作業をするのですが,jupyterではノートブックという形式でソースコードや,その解説,結果などをまるっと保存します. なのでノートブックの作り方を解説して行きたいと思います.

ノートブックを作って作業する

f:id:teru0rc4:20170729155857p:plain

右上のnewをクリックすると,Python3と出てきます.(2系の人はpython2??) これをクリックしてあげます. すると…!!

f:id:teru0rc4:20170729155927p:plain

これでノートブックは作成されました. あとはInと書かれた部分にPython のコードを打ち込んであげるだけです. このlnがついてハイライトされた枠をセルと呼ぶらしいです.

f:id:teru0rc4:20170729160852p:plain

特定のセルを選択しハイライトされた状態でCtrl+enterをすると,今現在のセルに打ち込んだ内容を実行することができます. shift+enterをするとセルの追加もできます. セルを適度に区切ってやることで,ここまででこんな感じになっている.というのを実行結果ごと保存できるのがjupyterの強みです.

さらに,上のタブからcodeをクリックし,出てくるメニューからMarkdownを選ぶと…, f:id:teru0rc4:20170729160909p:plain

f:id:teru0rc4:20170729161008p:plain

セルにマークダウンの記法が入力できるモードになり,shift+enterをすると, f:id:teru0rc4:20170729161058p:plain マークダウンの記法に従った文章がノートブックに追加されます.

コードを書き,その解説などをマークダウンの記法で綺麗にまとめることが簡単にできます.

ちなみに新規のノートブックを立ち上げた際,Python3を選んだ理由ですが, 他の言語を指定することもできるからのようです(詳しくは知りません…). もともとは ipython notebookをなのっていたのですが,他の言語に対応した際, Jupiter notebookに名前を変えたらしいです.

ノートブックを保存/jupyterを停止する

ノートブックの保存は上のバーのFileの中のSave and Checkpointからすることができます. オートセーブの設定になっていれば自動的にUntitled.ipynbという名前で保存されていると思います. リネームは対象のノートブックを開いてFileの中のRenameでできます. 今回はsample.ipynbという名前にしました.

f:id:teru0rc4:20170729161931p:plain

保存していれば,最初の画面でsample.ipynbが追加されているのが確認できると思います.

f:id:teru0rc4:20170729162023p:plain

終了したい場合, ブラウザのページは閉じてあげて問題ないです. jupyterを起動したターミナル上でCtrl+Cをしてあげて, jupyterを停止してあげれば終了は完了です.

f:id:teru0rc4:20170729162505p:plain

過去のノートブックを開く

開きたいノートブックがあるディレクトリで,jupyter notebookとしてやり, 上と同じように,The Jupyter Notebook is running at: **********で示されたアドレスを開くとファイル一覧にノートブックの名前があるので, それをひらけば過去の状態をそのままに,追記や編集ができます

https://utano.jp/entry/2016/01/jupyter-ipython-notebook-install/

おわりに

Jupyterのあれこれをまとめました

これを書いた目的は, KaggleのチュートリアルであるTitanic: Machine Learning from Disaster(https://www.kaggle.com/c/titanic)に挑むまでの準備の際に, Jupyterを準備したということに由来してます. それはまた次回書きます.(いつになるかな…)