はじめてのPython
まず、Windowsでの簡単なPythonのインストールについて説明する。Pythonの基本的な使用は、この簡単な準備で行える。
使用するライブラリ(モジュール)は、ここで説明しているようにpipコマンドで簡単にできる。どのライブラリが必要であるかは、スクリプト(プログラム)を実行したときに、「何々モジュールが見つかりません」などのメッセージが表示されたときに、その何々モジュールをインストールすればよい。例えば、「numpyがない」というようなメッセージが出されたときは、ここで説明しているようにPowerShellを起動して、コマンド
pip install
numpy
を実行すればよい。
ベイズ分析のためのライブラリPyStan(StanのPython用インターフェース)のインストールは、Anacondaで行うと簡単である。簡単なAnacondaのインストールと、AnacondaにおけるPyStanのインストールの説明を本ウェブサイトの後半において行っている。
Pythonのインストールの前に、インストール先のフォルダを作成する。これは、Pythonをデフォルトのインストール先フォルダにインストールするとpipコマンドが使えないからである(2020.08.30現在)。
ファイルエクスプローラでCドライブを開き、「New Folder」メニュアイコンを選ぶ(図A.1)。
図A.1
「New Folder」をクリックして作成されるフォルダに適当に名前を付ける。図A.2では「MyPython」としている。
図A.2
Pythonインストール用のフォルダ作成後、Pythonインストールを以下のように行う。
Pythonはウェブサイト
からダウンロードできる。
上記、ウェブサイトにアクセスすると図A.3のサイトが表示される。
図A.3
文字列「Downloads」上にカーソルを置くと表示されるフォームのDownloadボタン(図A.3では「Python 3.10.2」)をクリックする。
「ダウンロード」フォームが右上に表示される(Microsoft Edgeの場合)ので、。「開く」ボタンをクリックする(図A.4)。
図A.4
ダウンロードが始まり、ダウンロードが終了すると、図A.5のフォームが表示される。
図A.5
図A.5のフォームにおいて、「Install launcher…」と「Add Python…」の両方にチェックを入れる(図A.6)。
図A.6
左下の2か所「Install launcer…」と「Add Python …」にチェックを入れてから、「Customize installation」の領域をクリックする。
「Optional Features」フォームが表示されたら、オプション全てにチェックを入れて(全部が必要というわけではないが)「Next」ボタンをクリックする(図A.7)。
図A.7
「Next」ボタンをクリックして表示されるフォームにおいて、インストール先のフォルダの設定を行う(図A.8)。
図A.8
「Browse」ボタンをクリックして表示されるボックスにおいて、インストール先のフォルダを選ぶ。図A.8では「MyPython」が選ばれている。フォルダを選んで「OK」ボタンをクリックすると、図A.9のようになる。
図A.9
オプション「Install for all users」のチェックも付けてインストールしてみて、インストールが成功しない場合は、外してやり直してみるとよい。
「Install」ボタンをクリックすると、インストールが始まる。
インストールが終了すると、図A.10のフォームになる。「Close」ボタンのクリックで、インストール終了である。
図A.10
Pythonのインストールが終了すると、スタートメニュにインストールされたPython関係のメニュ項目が表示される(図A.11)。
図A.11
項目「IDLE」を選んでIDLE(Integrated Development and Learning Environment)を起動すると、図A.12のウィンドウが表示される。
図A.12
キーボードからスクリプトを入力すると「>>>」の右側に入力される。「1 + 2」と入力すると図A.13のようになる。
図A.13
「1 + 2」と入力してEnterキーを押すと、スクルト「1 + 2」が実行されて、計算結果が次行に表示され、次のスクリプト入力待ちとなる。
IDLEのウィンドウにおいて実行スクリプトを入力して実行する上のような方法は、インタラクティブモードによる方法と呼ばれている。インタラクティブモードは、ちょっとした計算や、Pythonの言語仕様を確認するときに便利であるが、長いスクリプトには適さない。長いスクリプトは、ファイルに用意して実行するとよい。これは、スクリプトモードと呼ばれている。
スクリプトモードでは、スクリプトをファイルに用意する。新しくスクリプトファイルを作成するときは、IDLEを起動して、メニュ「File|New File」を選ぶ(図A.14)。
図A.14
メニュ「File|New File」によって開かれた新しいエディタ用フォームが表示される(図A.15)。
図A.15
この新しく開かれたエディタ用フォームのファイル名を、エディタ用フォームのメニュ「File|Save As」を選んで設定する(図A.15)。
メニュ「File|Save As」を選ぶと、「名前を付けて保存」ダイアログボックスが表示される(図A.16)。
図A.16
保存先フォルダを選び、「ファイル名」に適当な名前を設定する。ファイル拡張子は「.py」である。
「保存」ボタンをクリックして保存したのち、エディタ画面内にスクリプトを入力する(図A.17)。
図A.17
スクリプトを書き終わったら、メニュ「File|Save」を選んでファイルに保存する(図A.18)。
図A.18
この保存操作を行うまでは、図A.12のエディタ画面のスクリプトは画面上に入力された状態のままで、ファイルには格納されていない。スクリプトの実行前には、必ずスクリプトファイルの保存を行う。
上記の保存操作後、メニュ「Run|Run Module」を選んでスクリプトを実行する(図A.19)。
図A.19
スクリプトの実行中の出力は、IDLEのウィンドウに表示される(図A.20)。
図A.20
既にあるスクリプトファイルを開いて実行するときは、図A.14において「File|Open」メニュを選んでファイルを開いて、開いたファイルのウィンドウの「Run|Run Module」(図A.19参照)を選んで実行すればよい。
Pythonスクリプトにおいて、ライブラリ(モジュール)を利用することができる。統計データ分析用モジュールとしては、numpy、scipy、pandas、matplotlib、seaborn、xlrdなどがあり、ゲーム用としてはpygame、画像処理としてはopencvなどがある。これらのインストールは、pipコマンドで簡単にできる。
コマンドpipを利用するために端末ソフトを立ち上げる。図A.21では、スタートメニュにおいて「Windows PowerShell」を選んでいる。ソフトのインストールなので、管理者権限で端末ソフトを起動するために、「Windows PowerShell」のメニュアイコンをマウスの右ボタンでクリックして、表示されるメニュから「管理者として実行する」を選んでいる。「管理者権限」ではなく、普通に起動してもインストールできるソフトもある。
図A.21
「管理者」権限で起動された端末ソフトには「管理者」と表示されている(図A.22)。
図A.22
図A.22において、次のコマンドpip listを実行してみる。これは、現在インストールされているモジュール(ライブラリ)の一覧を表示するものである。
PS C:\WINDOWS\system32> pip list
Package Version
---------- -------
pip
21.2.4
setuptools 58.1.0
WARNING: You are using pip version
21.2.4; however, version 22.0.3 is available.
You should consider upgrading via the
'C:\MyPython\python.exe -m pip install --upgrade pip' command.
PS C:\WINDOWS\system32>
2つのモジュール、pipとsetuptoolsがインストールされていることが分かる。出力の最後に
You should consider upgrading via the
'C:\MyPython\python.exe -m pip install --upgrade pip' command.
とあるが、これはpipの更新を促すものである。この通りに実行すれば更新されるが、pythonコマンドは拡張子.exeを省略しても構わない。すなわち、以下のようである。
PS C:\WINDOWS\system32> python -m
pip install --upgrade pip
Requirement already satisfied: pip in
c:\mypython\lib\site-packages (21.2.4)
Collecting pip
Downloading pip-22.0.3-py3-none-any.whl (2.1 MB)
|████████████████████████████████|
2.1 MB 2.2 MB/s
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation:
pip 21.2.4
Uninstalling pip-21.2.4:
Successfully
uninstalled pip-21.2.4
Successfully installed pip-22.0.3
PS C:\WINDOWS\system32>
モジュール(ライブラリ)のインストールは、次のように「pip install モジュール名リスト」の形式のコマンドの実行で行える。
PS
C:\WINDOWS\system32> pip install numpy scipy pandas matplotlib seaborn xlrd
インストールが成功すると、以下のようなメッセージで終わる。指定したモジュールが必要とする他のモジュールも同時にインストールされる。
Installing collected packages: pytz,
xlrd, six, pyparsing, pillow, numpy, kiwisolver, fonttools, cycler, scipy,
python-dateutil, packaging, pandas, matplotlib, seaborn
Successfully installed cycler-0.11.0
fonttools-4.29.1 kiwisolver-1.3.2 matplotlib-3.5.1 numpy-1.22.2 packaging-21.3
pandas-1.4.1 pillow-9.0.1 pyparsing-3.0.7 python-dateutil-2.8.2 pytz-2021.3
scipy-1.8.0 seaborn-0.11.2 six-1.16.0 xlrd-2.0.1
PS C:\WINDOWS\system32>
モジュール名の間違いなどでインストールに失敗したときは、正しいモジュール名で「pip install 〜」を再度実行すればよい。
統計分析のPythonスクリプト例は、<岡本安晴「データを使いこなすための統計入門」22世紀アート>の著者ウェブサイトに用意している。
Pythonによるデータ分析の説明を<岡本安晴「いまさら聞けないPythonでデータ分析」丸善出版>で行っている。
いろいろなPythonスクリプト例を、ウェブサイト
http://y-okamoto-psy1949.la.coocan.jp/Python/sampleprgs/
http://y-okamoto-psy1949.la.coocan.jp/Python/misc/
に用意している。
StanのPythonインターフェスであるPyStanモジュールは、Stanスクリプトのコンパイルに使用されるC++コンパイラの種類との組み合わせを考えなければならない。Anaconda内でPyStanのインストールを行うと、AnacondaにおいてC++コンパイラとの組み合わせが自動的に調整されて、PyStanのインストールのときに必要なC++コンパイラも一緒に自動的にインストールされる。
ただし、現時点(2022.11.11)では、Python 3.7の仮想環境を用意して、pystan 2.17.1.0をインストールする必要がある(このサイトで説明)。
Anacondaはウェブサイト
https://www.anaconda.com/products/individual
から入手できる。
上記ウェブサイト(図B.1)の「Download」ボタンをクリックする。
図B.1
Anaconda Installersと表示のある画面に移る(図B.2)。
図B.2
Windowsでのインストールの場合、Windowsの下にある「64-Bit Graphical Installer (466 MB)」の文字列のあるところをクリックする。
「Save As」ダイアログボックスが表示される(図B.3)。
図B.3
「Save」ボタンのクリックでダウンロードが始まる。
ダウンロードとファイルのチェックが終了すると、ブラウザーの左下に文字列「Open file」が表示される(図B.4)。
図B.4
文字列「Open file」の個所をクリックする。ダウンロードされたファイルの実行が始まり、Anacondaインストールのフォームが表示される(図B.5)。
図B.5
「Next」ボタンをクリックすると、ライセンス同意のダイアログボックスが表示される(図B.6)。
図B.6
「I Agree」ボタンをクリックして先に進む。「インストレーションタイプ選択」のダイアログフォームが表示される(図B.7)。
図B.7
推奨とある「Just Me」にチェックを入れて、「Next」ボタンをクリックする。
インストール先設定のダイアログボックスが表示される(図B.8)。
図B.8
インストール先フォルダをデフォルト値のままにして、「Next」ボタンをクリックする。「Advanced Installation Options」ダイアログフォームが表示さる(図B.9)。
図B.9
インストールによるシステムへの影響を最小限に抑えるため、2つのオプション「Add…」と「Register…」のチェックを外した状態で「Install」ボタンをクリックする。
インストールが終了して、図B.10のフォームが表示されたら、「Next」ボタンをクリックする。
図B.10
図B.11のフォームが表示される。「Next」ボタンをクリックする。
図B.11
図B.12のフォームが表示される。
図B.12
特に今「Anaconda~Tutorial」も「Learn~Anaconda」も読まないのであれば、「Finish」ボタンをクリックして終了する。
Anacondaのインストールが終了すると、スタートメニュにAnaconda関係の項目が表示される(図B.13)。
図B.13
「Anaconda Powershell Prompt」を選ぶと、図B.14の端末ソフトのウィンドウが表示される。
図B.14
行の先頭に「(base)」とあるのは、Anacondaの仮想環境「base」がアクティブである端末画面であることを示している。Anacondaがインストールされると、「base」という名前の仮想環境が作成され、Anacondaの端末ソフトを起動すると仮想環境「base」がアクティブな状態で端末画面が表示される。
このAnacondaのPowershell Prompt端末画面においても普通のPowershell Prompt端末画面と同じように、「cd」や「ls」などが使用できる。
仮想環境においてPythonのモジュールをインストールするときは、condaコマンドを用いる。pipコマンドも使用できるが、パッケージの管理などの関係でconda コマンドの使用が薦められている。
コマンドcondaでモジュールをインストールするときは
conda install モジュール名
のようにコマンドを実行すればよい。図B.15は、モジュールnumpy、scipy、pandas、matplotlib、seaborn、xlrdをまとめてインストールする場合である。
図B.15
PyStanのインストールも同様である(図B.16)。
図B.16
Stanスクリプトは実行時にC++コンパイラによって処理されるが、Stanスクリプトの処理に対応したC++コンパイラが必要である。Anacondaの仮想環境においてcondaコマンドでインストールすれば、Stanと組み合わせて使用できるC++コンパイラも自動的に一緒にインストールされる。
Stanスクリプトを使用したPythonスクリプトを実行してみる。
StanスクリプトとPythonスクリプトは、新規に作成する場合は、本ウェブサイトの前半で説明しているPythonのIDLEを用いることができる(他のエディタでもよい)。図B.14のようにAnacondaの仮想環境がアクティブな状態でも、仮想環境外のソフトも使用可能である。
Python IDLEを起動して(図A.11)、そのエディタでStanスクリプトファイルbinomial.stanとPythonスクリプトファイルAnalysis.pyをファルダC:\WorkSpace\Samplesに作成した(図B.17)。
起動したAnaconda Powershell Prompt端末において、cdコマンドによってカレントディレクトリ(フォルダ)を実行するスクリプトの置かれているフォルダC:\WorkSpace\Samplesに移動する(図B.17)。
図B.17
カレントディレクトリを実行したいスクリプトファイルの格納されているディレクトリ(フォルダ)に移動してから、pythonコマンドによってスクリプトを実行する(図B.17)。スクリプトファイルを新規に作成したとき、あるいはエディタで開いて変更を行ったときは、ファイルの実行前に保存操作を行っておくことが必要である。
図B.17におけるAnalysis.pyの実行が終了すると、StanによるMCMCサンプリングの統計量がコード
print(fit)
の実行によって出力される(図B.18)。
図B.18
Stan(PyStan)の説明を<岡本安晴「いまさら聞けないPythonでデータ分析」丸善出版>第10章〜第12章で行っている。