Python
Ubuntu

python3と科学計算ライブラリ周りをUbuntuにインストール(virtualenv+pip)

More than 1 year has passed since last update.


Installing python3 on Ubuntu

入れた履歴。

入れたライブラリは、numpy,scipy,matplotlib,seaborn,jupyter等である。主にvirtualenv上でpipでインストールした。

他にaptで入れる方法や、anacondaで入れてしまう方法があるようだ。(そちらのほうが安定していそう。)


追記:2016/09/26

Anacondaの方が管理が楽で、作られるパッケージもanacondaに対応したものが出るなど、デファクトになっているようです。なので以下に書いてある方法はあまりおすすめしない方法になります。


# なんか入れる.

sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y install build-essential
sudo apt-get -y install python3-dev
python -V
python3 -V

#pythonと打つとpython3になるようにする。(追記:バグの原因になるのでやらないほうがいいようだ)
#echo alias python=python3 >> ~/.bash_aliases
#source ~/.bash_aliases
#python -V

# pipを入れる。
sudo apt-get install python3-setuptools
sudo easy_install3 pip
# pip の場所がpython3になっているか確認する。
pip -V
# 現在入っているもの
pip list

#virtualenvを入れる
sudo pip install virtualenv

#projectディレクトリを作る
mkdir ./projectPath
cd ./projectPath

#環境を作って起動
virtualenv venv
source venv/bin/activate

#gitignoreに加える
#echo venv >> .gitignore

#確認
pip list

#以下はpipを使っていろいろ入れてみる。
#numpyを入れる。
pip install numpy

#scipyを入れる。fortranコンパイラがいる。
sudo apt-get install libatlas-base-dev gfortran
pip install scipy

#matplotlib,seabornを入れる。freetypeがいる。
sudo apt-get install libpng-dev
sudo apt-get install libfreetype6-dev
pip install matplotlib
pip install seaborn
#以下は必要ないかも。matplotlibで、qt4とpysideを使う場合。
sudo apt-get install qt-sdk
sudo apt-get install cmake
sudo pip install pyside
#matplotlibの設定ファイルに書き込む
vim ~/.config/matplotlib/matplotlibrc
#backend : qt4agg
#backend.qt4 : PySide

#Jupyter
pip install jupyter

#testライブラリ
pip install nose

#その他
pip install quandl
pip install scikit-learn

#書き出しておく
pip freeze > requirements.txt

#仮想環境から抜ける。
deactivate

サンプルコードを書いてみる。


test.py

import numpy as np

import pandas as pd
import seaborn as sns

x = np.random.normal(size=100)
sns.distplot(x, kde=False, rug=False, bins=10)


seaborn君import時にerror吐く、けどipython上だと吐きながら動く。


ipython

対話環境の強化版らしい。

以下は気づいたことを箇条書きで。

マジックコマンド等は?をつけると説明が読める。(例:#run?)


グラフ描画時に別ウィンドウでグラフが出るようにする。

自分の環境だとなんかqtいれて指定しないといけなかった。普通だとmatplotlib inlineでいけるっぽいです。

%matplotlib qt4


ipython起動時に指定する。

ipython --matplotlib qt4


fileのロード

%load filename.py


fileをロードじて実行

%run filename.py


fileに書き込む

%%writefile filename.py

...

コマンド後書いたものでfileを上書きする


履歴表示

%history -n

%history -n range 2-3


どこかの行をfileに書き込む

%save -a filename.py 2

上ではhistory番号を指定して保存している。In[n]、Out[n]のような指定も出来る。

-aオプションで上書きじゃなく追記になる。


変数の値を書き出す

%store foo >> a.txt


jupyter(旧iPython Notebook)

ブラウザエディタの科学計算用のwordみたいな感じ。ipythonをコアにしている。

iPythonからNotebookを切り出したもので、pythonに限らずrubyやhaskellのnotebook(.ipynb)も扱える。

サーバにもなる。


notebookを編集する使い方。

jupyter notebook

で起動

右上のnewからpython3を選べば、新しいnotebookを作れる。

行単位で編集していく。左上のプラスで新しい行を作れる。

行の種類は、code,markdown,とか。右上から選べる。

codeを書いた場合は、ctrl+enterを押すと実行され、結果が画面にでる。

グラフを表示する場合は、

%matplotlib inline

を実行する.