Pythonで面倒くさい計算を楽にする

授業で逆行列を求めなければいけないということがあり、別にWebのサービスとかmathematicaとか使えばいいんですけど、

なんとなくめんどくさいなと…ターミナルで簡単に出来ないかなと。

そこでpythonを使いました。pythonは機械学習などで用いられているだけ、数学的処理のライブラリが豊富でほとんど何も知らなくても結構、難しい処理まで出来ます。

そんなpythonですが今回はNumpyという数値計算ライブラリを使いました。おもに行列計算を扱うライブラリです。画像処理なんかでもお世話になります インストールはpipでもanacondaでもお好きなようにして下さい。

import numpy as np

mat_A = np.array([[2,1], [1,7]])
inv_mat_A = np.linalg.inv(mat_A)
print(inv_mat_A)

これだけです。ちなみに逆行列を算出してベクトルにかけて、その結果が欲しいとかっていうときは逆行列を求めて乗算するのではなくて np.linalg.solve使ったほうが速い??という面白い考察をしているサイトも見つけたので紹介します。 http://d.hatena.ne.jp/sleepy_yoshi/20120513/p1