My Note Pad

エンジニアリングや日々の雑感を書いていきます

噂のjupyterをMacで利用できるようにしてみた

少し前からjupyterが便利という声がチラホラと聞こえて来るようになりました。
python使ったことないしなー・・と躊躇していたのですが、色々あって試してみることにしました。

jupyter

jupyter.org

jupyterって何かと言われると、まだあまり詳しくないのですが、Webブラウザで使えるREPLのような感じらしいです。
書いたコードや実行結果の履歴が自動で残ったり、グラフの描画ができたりととても高機能らしいです。
また、コードだけではなくMarkdownでメモを残したりもできるので、「もっと早く使っておけばよかった・・」という感想です。

そもそも何でjupyterを知ったのか

↓Udemyのこちらのコースで知りました。

www.udemy.com

pythonとデータサイエンスが学べるコースになっています。
機械学習をやってみたく、pythonやnumpyなどのライブラリについて学べるので思い切って受講しました。
セールで安かったのもありますが、、、

このコースでは、jupyterではなくipythonという名前で登場しています。
コース内で以下のコマンドで起動する所があるのですが、起動できなくて相当ハマりました。。

$ ipython notebook

というわけで、python初心者ながら色々調べてなんとかなったのでメモ

pyenvのインストール

コース中では、直接anacondaをダウンロードしてインストールしているのですが、それは嫌だな、、と思い、pyenvでインストールすることにしました。

まずはサクッと Homebrewでpyenvをインストールします。

$ brew install pyenv

続いて~/.bash_profileの編集
↓を~/.bash_profileに追記します

export PYENV_ROOT="${HOME}/.pyenv"
if [ -d "${PYENV_ROOT}" ]; then
    export PATH=${PYENV_ROOT}/bin:$PATH
    eval "$(pyenv init -)"
fi

~/.bash_profileを再読み込み

$ source ~/.bash_profile

pyenvコマンドが使用できるようになっていればOK

$ pyenv --version
pyenv 20160303-45-g12069a1

anacondaのインストール

続いてanacondaをインストールしていきます。
anacondaはデータサイエンスに必要なパッケージをまとめたもの(?)らしいです。
※jupyterを使うだけならminicondaでも良いらしい。

まずはインストール可能なパッケージを調べます
今回はpython3系をベースとした anaconda3系をインストールしました。

$ pyenv install --list | grep anaconda3
  anaconda3-2.0.0
  anaconda3-2.0.1
  anaconda3-2.1.0
  anaconda3-2.2.0
  anaconda3-2.3.0
  anaconda3-2.4.0
  anaconda3-2.4.1
  anaconda3-2.5.0

続いてインストール

$ pyenv install anaconda3-2.5.0

インストールされたか確認してみます

$ pyenv versions
  system
* 3.5.0 (set by /Users/${username}/.pyenv/version)
  anaconda3-2.5.0

anacondaを特定のディレクトリ配下に割り当て

anacondaを利用したいディレクトリを作成。

$ mkdir ~/Documents/jupyter

作成したディレクトリにanacondaをローカルインストール

$ pyenv local ~/Documents/jupyter
#これで ~/Documents/jupyterディレクトリ配下のみanacondaが割り当てられました。

anacondaをインストールしたディレクトリに移動してjupyterを起動してみます。

$ cd ~/Documents/jupyter
$ jupyter notebook

これでブラウザでjupyter notebookが利用できるようになっています。

f:id:yuki10k:20160321225938p:plain

今回は以上!

もうすぐAppleの発表です。
iPhone SEの発表にワクワクが止まりません。
メモリ 2GBだったらいいな。。