2013年8月22日木曜日

Mountain Lion で python ことはじめ : NumPy, SciPy, matplotlib 導入

 計算する宇宙の記事をまとめていると,だんだんと実際に数値計算・分析を行いたくなってきます。これまで Octave というソフトを主に用いてきて,こちらの記事にセットアップ方法などをまとめていますが,そろそろ新しい言語に挑戦してみようと思い立ちました。
 そこで選んだのが python。科学計算のライブラリが充実しており,さらにユーザー数がとても多いとのこと。確かに python に絞った数値計算の記事や本があったり,まったく分野の違う研究室の友人が python を使ってました。

 
 さて,Mac で何かを行うときの最大の関門が環境構築です。環境の微妙な差異でもインストール失敗に繋がることが割りとあります。ソフトウェア管理については Ubuntu の apt-get 環境が羨ましい限りです。

 Mac には標準で python がインストールされているため,科学計算に必要なパッケージさえインストールすればよさそうです。とりあえず必要なパッケージは,行列演算用の NumPy,様々な演算のライブラリである Scipy。これに加えて Matlab ライクのグラフライブラリである matplotlib を入れると良いようです。これらパッケージの Mac OS X へのインストールは,すでに解説記事が多数存在していますが,上記のように成否が個人個人で異なってくるため,1 つでも多くの環境構築報告があるほうが有意義だと考え,以下にまとめてみました。


 以下は全て Mac OS X 10.8.4 (Mountain Lion) 上で行いました。
 
  まず,パッケージをインストールする方法を調べてみると,
(1) Macports を使用する方法
(2) setup.py を使用する方法
が見つかります。
 
(1) Macports を使用する方法
 こちらのページに記されているように,
sudo port install py27-numpy py27-scipy py27-matplotlib py27-ipython +notebook py27-pandas py27-sympy py27-nose
を実行すればよいとのこと。
 早速試してみました。NumPy と matplotlib は無事インストールできましたが,SciPy のビルドで gfortran が

gfortran: error trying to exec 'f951': execvp: No such file or directory
というエラーを吐きます。調べた所このエラーを解消するには,現在入れている gcc 及び Xcode をアンインストールし,こちらで配布されている gcc を入れなければならなそうです。gcc の方はまともに動いているんだからそんな余計なことはできないよ!ってことでこの方法は諦めました。

(2) setup.py を使用する方法
 SourceForge からソースコードをダウンロードし,フォルダ内の setup.py を,python で実行する方法があります。しかしこの方法でも,(1) と同様の gfortran のエラーにより構築できませんでした。

 困ったなと検索していたところ,このページを見つけました。
Mac OS X のためのインストールガイド - OpenAcoustics
このサイトは日本建築学会の委員会が行っているプロジェクトのもので,音響数値解析を目的とした python のコードやドキュメントを公開しています。
 このページでは (3)全てを dmg ファイルを用いてインストールする方法 が紹介されています。10.5 及び 10.6 向けに書かれていますが,10.8.4 でもこの方法でうまくいきました! ただ,このページの内容が少々古かったため,以下に本記事作成時点での流れをまとめなおしました。

(3) 全てを dmg ファイルを用いてインストールする方法

 パッケージのそれぞれが dmg 形式でも配布されています。ビルドを行う必要がないため,gfortran のエラーを抱えている環境でもインストールができます。
 

 パッケージを dmg でインストールするためには,python も dmg でインストールする必要があります。ただしもとから入っている python をアンインストールする必要はないようです。
 こちらのページから,Python 2.7.5 の dmg ファイルをダウンロードします。









 dmg ファイルをダブルクリックし,表示されたフォルダ内の Python.mpkg をダブルクリックします。あとはウィザードにしたがって作業をすすめればOKです。インストールと同時に,.bash_profile に自動的に以下のように追記され,ターミナルで python を実行すると,今までの python の代わりに新しいものが呼び出されます。






 どちらの python が呼び出されているかは,python の中で下記のようにすれば確認できます。このようになっていれば dmg で入れた方が起動しています。もし今までの方が呼び出されていた場合は,.bash_profile を反映させるため一旦ログアウトしてみて下さい。

 





 つづいて NumPy のインストールです。こちらのページから最新バージョンを選択します。















 表示された中から,macosx10.6.dmg となっているものを選択します。10.6 と書いてありますが,10.8.4 でも動作しました。

















 あとは先ほどと同様,dmg をマウントし,中の pkg もしくは mpkg ファイルをダブルクリックして,ウィザードに従ってインストールを進めればOKです。

 つづいては SciPy のインストール。こちらにあります。


















 dmg をダウンロードしたら,NumPy と同様の手順でインストールを行います。

 最後に matplotlib です。こちらから。最新バージョンの 1.3.0 には dmg がないため,1.2.1 を選択します。













 dmg ファイルをダウンロードしたら,NumPy,SciPy と同様にウィザードに従ってインストールを行ってください。


 インストール手順は以上です。python で import し,dir や help コマンドで確認してみましょう。















 無事 Mac OSX 10.8.4 に,python,NumPy,SciPy,matplotlib がインストールできていることを確認できました。

0 件のコメント:

コメントを投稿