-1 の平方根を取ると、エラーが発生します。
sqrt で無効な値が検出されました
どうすれば修正できますか?
from numpy import sqrt
arr = sqrt(-1)
print(arr)
警告/エラーを回避するinvalid value
には、numpy のsqrt
関数の引数を複雑にする必要があります。
In [8]: import numpy as np
In [9]: np.sqrt(-1+0j)
Out[9]: 1j
@AshwiniChaudhary がコメントで指摘したように、cmath
標準ライブラリを使用することもできます。
In [10]: cmath.sqrt(-1)
Out[10]: 1j
sqrt documentationnumpy.lib.scimath.sqrt
で説明されている便利な関数を発見しました。次のように使用します。
>>> from numpy.lib.scimath import sqrt as csqrt
>>> csqrt(-1)
1j
cmathモジュール (標準ライブラリの一部)の sqrt を使用する必要があります。
>>> import cmath
>>> cmath.sqrt(-1)
1j