本記事ではPythonで微分を計算する方法を解説します。
Pythonで微分を行うためには、SymPyという代数計算ライブラリを使用します。
\[ \frac{dy}{dx} = f'(x) \]
微分とは
まずは微分について簡単に解説します。
微分とは瞬間の変換率のことで、グラフの接線として表すことができます。

例えば、y=x^2のx = 2における微分は、赤の直線グラフによってあらわすことができます。
SymPyのインストール
まずはSymPyのインストールを下記のコマンドで行います。
pip install sympy
これで準備完了です。
Pythonで微分を計算する方法
最初にimport sympy
でライブラリをインポートし、x = sympy.Symbol('x')
で変数を定義したうえで、sympy.diff
で微分を行うことができます。
\[ (x^2)’ = 2x \]
import sympy
x = sympy.Symbol('x')
print(sympy.diff(x**2)) # 2*x
\[ (1/x)’ = -\frac{1}{x^2} \]
import sympy
x = sympy.Symbol('x')
print(sympy.diff(1/x)) # -1/x**2
\[ (sin(x))’ = cos(x) \\ (cos(x))’ = -sin(x) \\ (tan(x))’ = \frac{1}{cos(x)^2} \\ (1/tan(x))’ = -\frac{1}{sin(x)^2} \]
import sympy
x = sympy.Symbol('x')
print(sympy.diff(sympy.sin(x))) # cos(x)
print(sympy.diff(sympy.cos(x))) # -sin(x)
print(sympy.diff(sympy.tan(x)).simplify()) # cos(x)**(-2)
print(sympy.diff(1/sympy.tan(x)).simplify()) # -1/sin(x)**2
\[ (sinh(x))’ = cosh(x) \\ (cosh(x))’ = sinh(x) \\ (tanh(x))’ = 1 – tanh(x)^2 \]
import sympy
x = sympy.Symbol('x')
print(sympy.diff(sympy.sinh(x))) # cosh(x)
print(sympy.diff(sympy.cosh(x))) # sinh(x)
print(sympy.diff(sympy.tanh(x))) # 1 - tanh(x)**2
このように、簡単に微分を行うことができます。
また、simplify()
を実行することで式を簡略化することができます。
