忘れないようにメモっとく

機械学習とかプログラミングとか。

sympyでいろいろ計算する

記号計算ができるpythonライブラリのsympyを使ってみた。
因数分解とか微分とか、mathematica風の機能がpythonでも使えるようになる。

インストール
$ pip install sympy

数式をきれいに表示するために、ipython notebookを使うのがオススメ。

from sympy import *

# 数式の表示をするためのメソッド
init_printing()

# 使用する変数の定義
x, y, z = symbols('x y z')

# 方程式をつくる
expr = exp(x)/y + z**2
expr

# 展開
expand((x + y)**3)

# 因数分解
factor(x**2 + 2*x*y + y**2)

# 方程式を簡単にする
sympify((x + 2*x + x**3)*4 + 3 + x + 4*x)

# 方程式を解く
expr = x * y + 2/y
solve(expr, x)

# 極限
# 1/x を x について無限大の極限をとる
limit(1/x, x, oo)

# 微分
diff(sin(x), x)

# 積分
integrate(cos(x), x)

出力貼るのめんどくさかったので、こっちで確認してください。
-> http://nbviewer.ipython.org/6210102

github
-> https://github.com/akiniwa/py_sympy