【Python入門】平方根の演算|様々な関数の使用方法を学ぶ

平方根の演算|様々な関数の使用方法を学ぶ_アイキャッチ プログラミング

※ 当サイトはアフィリエイト広告を利用しています。

levtech-ad
スポンサーリンク

Pythonによる数学計算の基本として、「平方根の演算」があります。

数値解析や機械学習で欠かせない、基本的な演算方法の一つです。

本記事では、そんなPython基礎となる平方根の演算について、詳しくご説明します。

こんな人に読んでほしい
  • Python初心者の人
  • Pythonでの平方根計算方法について学びたい人
levtech-ad

平方根の演算

平方根(square root)とは、2乗(平方)すると元の値に等しくなる数のことです。

例えば、\(\sqrt{x}\)は\(x\)の平方根です。

ここで、\(x=-1\)の場合、2乗して\(-1\)になる実数は存在しませんので、虚数の「\(i\)」が使用されます。

\(i=\sqrt{-1}\)を使用して、実数と虚数を組み合わせた複素数「\(z=a+bi\)」も平方根で扱うことができます。

算術演算子 **0.5

算術演算子によって、平方根を計算してみます。

#input
X = 2**0.5
print("2の平方根:{}".format(X))
#output
2の平方根:1.4142135623730951

算術演算子により、平方根(0.5乗)を計算しました。

対象が負数の場合には、以下の結果になります。

#input
X = (-2)**0.5
print("-2の平方根:{}".format(X))
#output
-2の平方根:(8.659560562354934e-17+1.4142135623730951j)

結果の実数項は誤差ですが、虚数の項が上記結果と等しいことが分かるかと思います。

組み込み関数 pow()

Python組み込み関数のpow()を使用して、平方根を計算してみます。

#input
X = pow(3,0.5)
print("3の平方根:{}".format(X))
#output
3の平方根:1.7320508075688772

対象が負数の場合には、以下の結果になります。

#input
X = pow(-3,0.5)
print("-3の平方根:{}".format(X))
#output
-3の平方根:(1.0605752387249068e-16+1.7320508075688772j)

math.sqrt()

mathモジュールのmath.sqrt()関数を使用して、平方根を計算してみます。

この関数の引数には、負数や複素数は指定できません。

#input
from math import sqrt
X = sqrt(4)
print("4の平方根:{}".format(X))
#output
4の平方根:2.0

numpy.sqrt()

NumPyのnumpy.sqrt()を使用すると、配列型の平方根を計算することができます。

#input
import numpy as np
A = np.array([[ 4, 2,-3],
              [ 3,-4,-2]])
X = np.sqrt(A)
print("配列\n",A,"\nの平方根:\n{}".format(X))
#output
配列
 [[ 4  2 -3]
 [ 3 -4 -2]]
の平方根:
[[2.         1.41421356        nan]
 [1.73205081        nan        nan]]

負数の平方根には、”nan”が出力されました。

以下のように配列内の1要素を複素数で表すと、負数の計算結果が出力されます。

#input
import numpy as np
A = np.array([[ 4+0j, 2,-3],
              [    3,-4,-2]])
X = np.sqrt(A)
print("配列\n",A,"\nの平方根:\n{}".format(X))
#output
配列
 [[ 4.+0.j  2.+0.j -3.+0.j]
 [ 3.+0.j -4.+0.j -2.+0.j]]
の平方根:
[[2.        +0.j         1.41421356+0.j         0.        +1.73205081j]
 [1.73205081+0.j         0.        +2.j         0.        +1.41421356j]]

sympy.sqrt()

SymPyのsympy.sqrt()を使用すると、代数型の平方根を出力することができます。

#input
import sympy

#代数x,y,zを定義
sympy.var('x y z')

#x+y+zの平方根
X = sympy.sqrt(x+y+z)
print(X)
#output
sqrt(x + y + z)

sympy.root()

SymPyのsympy.root()を使用すると、引数\(n\)に対して、\(n\)乗根を出力することができます。

#input
import sympy

#代数x,y,zを定義
sympy.var('x y z')

#x+y+zの平方根
X = sympy.root(x+y+z,2)
print(X)
#output
sqrt(x + y + z)

まとめ

この記事では、Python基礎となる平方根の演算について、ご説明しました。

本記事を参考に、ぜひ様々な計算方法を使用してみてください。

参考

Python学習用おすすめ教材

Pythonの基本を学びたい方向け

統計学基礎を学びたい方向け

Pythonの統計解析を学びたい方向け

おすすめプログラミングスクール

Pythonをはじめ、プログラミングを学ぶなら、TechAcademy(テックアカデミー)がおすすめです。

私も入っていますが、好きな時間に気軽にオンラインで学べますので、何より楽しいです。

現役エンジニアからマンツーマンで学べるので、一人では中々続かない人にも、向いていると思います。

無料体験ができますので、まずは試してみてください!

\まずは無料体験!/
スポンサーリンク
タイトルとURLをコピーしました