数学講師2852771 views
LaTeX957300 views
世界の国560595 views
小学理科717236 views
小学社会308636 views
中学理科1626207 views
高校国語785655 views
英語607877 views
中学英語808712 views
高校化学2913383 views
Help
Tools

English

SymPy とは?数式処理の基本

SymPy は Python で数式処理を行うためのライブラリだ。数値計算ではなく、数式そのものを扱える点が特徴である。

数式処理とは

通常の Python で計算すると、結果は数値になる。

import math
math.sqrt(8)  # 2.8284271247461903

一方、SymPy を使うと数式のまま扱える。

from sympy import sqrt
sqrt(8)  # 2*sqrt(2)

という形式で返ってくる。これが数式処理の基本的な考え方だ。

インストール

pip でインストールできる。

pip install sympy

基本的な使い方

SymPy では、まずシンボル(変数)を定義し、それを使って式を組み立てる。

from sympy import symbols, expand

x = symbols('x')
expr = (x + 1)**2
expand(expr)  # x**2 + 2*x + 1

シンボルを定義

式を組み立てる

関数で処理

NumPy との違い

NumPy は数値計算に特化しており、配列演算が高速に行える。SymPy は数式の厳密な操作に向いている。

NumPy

数値計算向け。配列を高速に処理し、近似値を返す。

SymPy

数式処理向け。式を厳密に展開・簡約化し、記号のまま結果を返す。

用途に応じて使い分けるのがよい。数値シミュレーションなら NumPy、式変形や証明の補助なら SymPy が適している。