PyDataのためにAnacondaをインストールしてみる

いま、Pythonがちょっとしたブームになっています。以前はGoogleが使っているから(今はGoogle謹製のGo言語もありますが)といった理由でPythonを始める人が多かったのですが、いまは統計処理や機械学習との親和性の高さからPythonを始める人が多いようです。(私もその口です。)

実は、数年前にPythonを勉強を始めたことがありました。

ただ、その時はPython2だと日本語の扱いにちょっとクセがあって、Python2にするかPython3にするかという話があったりして、なんとなくフェードアウトしてしまったのでした。今ではPython3も結構一般的になっているだろうと思いますし、なによりPyDataだ!ということで、Pythonの勉強を再び始めたのです。

PyDataって知ってますか?

そう、PyData。別に、PyDataという何か製品とかライブラリがあるという話ではありません。Python+DataでPyData。先にも触れたようにPythonには統計処理や機械学習のライブラリが豊富に揃っていて、データサイエンスをやる環境が整っているというので、PyDataという言葉が生まれたようです。

データサイエンスをやる環境というと、R言語も思い浮かびますし、R言語で解説した書籍も多く見かけるのですが、やはりR言語はそれに特化したもの。Pythonのようにちょっとした(統計処理とは無関係な)スクリプトを書くこともできませんし、もちろんWebシステムの開発もできません。Pythonは汎用言語でありながら、データサイエンスもできるというのが凄いところです。

さすがにWebブラウザ上での動作はJavaScriptに譲らないといけないし、スマホアプリもそれ用の言語の方が良いかもしれませんが(スマホアプリについてはPythonでもできなくはないらしい)、せっかくプログラミング言語を学ぶのなら、多くの場面で使えた方がコスパが高い。やっぱり、Python!

Pythonのインストールにpyenvを使う

私はMacを使っているので、Pythonは標準で導入されています。ただ、それはPython2.7だし・・・。そこで、Pyenvを使って標準のPython2.7環境とPython3環境を使い分けるため、pyenvを使います。Macを使っているようなエンジニアの方ならPython以外にもRubyやNode.jsなども使うでしょうから、anyenvを入れて、その配下でpyenvを動作させるのがオススメです。

anyenvとpyenvのインストールについては、Qiitaの「インフラエンジニアなMacセットアップ」という記事を一読されると良いでしょう。

pyenvまでインストールした後に、Python3.5.2あたりを入れておくと良いのですが、それは気が向いたときでもOKです。PyDataの環境が一気に整うAnacondaというディストリビューションがあるのです。

Anacondaのインストール

Pythonにはデータサイエンス向けのライブラリが豊富であると書いたのですが、そうしたライブラリを一つ一つ導入していくのは大変です。そこで、そうしたライブラリも(ほぼ)全部入りで提供してくれているディストリビューションがAnaconda。

pyenv install anaconda3-2.5.0

これだけでAnacondaはインストールできます。あとは適当にPyDataで遊ぶためのディレクトリを作って、そのディレクトリに移動した際に自動的にAnacondaが有効になるように設定しておきましょう。

mkdir -p ~/dev/anaconda3
cd ~/dev/anaconda3
echo anaconda3-2.5.0 > .python-version

これで、次回以降、~/dev/anaconda3に移動した際に、(anaconda3-2.5.0)のように表示され、Anacondaが使える状態になります。

ipython_mac.command

Macの方はこのようなコマンドを打ってみてください。

ipython-notebook

このような画面がWebブラウザ上で開くのではないでしょうか。(開かない方は、http://localhost:8888 にアクセスしてみてください。)

これはIPython Notebookという環境で、Webブラウザ上で対話的にPythonスクリプトを実行できます。データを可視化する際にもグラフなどを表示することができます。対話的に作業した内容はファイルに保存されるので、あとで同じ作業を継続することができます。もちろん、書いたコードはふつうのPythonなので、自分で書いたコードを拾い集めて、ふつうのPythonスクリプトとして実行することもできます。

この記事を書いた人

井上 研一

株式会社ビビンコ代表取締役、ITエンジニア/経済産業省推進資格ITコーディネータ。AI・IoTに強いITコーディネータとして活動。画像認識モデルを活用したアプリや、生成AIを業務に組み込むためのサービス「Gen2Go」の開発などを行っている。近著に「使ってわかった AWSのAI」、「ワトソンで体感する人工知能」。日本全国でセミナー・研修講師としての登壇も多数。