NumPyのsqrt()関数は、行列要素の平方根を求めます。
PythonのNumPyモジュールは、多次元配列や行列の操作に使用されます。NumPyのsqrt()関数を使用すると、行列要素の平方根を取得することができます。
PythonのNumPy sqrt()の例
以下はPythonのNumPy sqrt()関数の使用例です。
import numpy
array_2d = numpy.array([[1, 4], [9, 16]], dtype=numpy.float)
print(array_2d)
array_2d_sqrt = numpy.sqrt(array_2d)
print(array_2d_sqrt)
出力する
[[ 1. 4.]
[ 9. 16.]]
[[1. 2.]
[3. 4.]]
整数の2乗でない行列要素がある別の例を見てみましょう。今回はPythonインタプリタを使用します。
>>> import numpy
>>>
>>> array = numpy.array([[1, 3], [5, 7]], dtype=numpy.float)
>>>
>>> print(array)
[[1. 3.]
[5. 7.]]
>>>
>>> array_sqrt = numpy.sqrt(array)
>>>
>>> print(array_sqrt)
[[1. 1.73205081]
[2.23606798 2.64575131]]
>>>
NumPyのsqrt()関数の無限大の例
NumPyのsqrt()関数を使った無限大の実例
無限を行列の要素として持つ場合に何が起こるか見てみましょう。
>>> array = numpy.array([1, numpy.inf])
>>>
>>> numpy.sqrt(array)
array([ 1., inf])
>>>
複素数
>>> array = numpy.array([1 + 2j, -3 + 4j], dtype=numpy.complex)
>>>
>>> numpy.sqrt(array)
array([1.27201965+0.78615138j, 1. +2.j ])
>>>
ネガティブな数
>>> array = numpy.array([4, -4])
>>>
>>> numpy.sqrt(array)
__main__:1: RuntimeWarning: invalid value encountered in sqrt
array([ 2., nan])
>>>
負の数を持つ行列の平方根を計算すると、RuntimeWarningが発生し、要素の平方根はnanとして返されます。参照:NumPyドキュメント。