NumPy の配列における虚数
Python では、虚数だけでなく実数も処理できます。
複素数を表すには、末尾に j
を追加するだけです。たとえば、次の文字列は虚数を表します。
a = 5 + 2j
print(a, type(a))
出力:
(5+2j) <class 'complex'>
このチュートリアルでは、numpy 配列の虚数を処理する方法を学習します。
前に説明したように、j
を追加するだけで複素数を作成できます。numpy.array()
、numpy.arange()
などのさまざまな関数を使用して、このリテラルを配列にブロードキャストできます。numpy 配列の複素数のさまざまな例については、以下のコードを参照してください。
arr_1 = 1j * np.arange(5)
arr_2 = np.array([2 + 1j, 3 + 4j, 5 + 2j])
print(arr_1)
print(arr_2)
出力:
[0.+0.j 0.+1.j 0.+2.j 0.+3.j 0.+4.j]
[2.+1.j 3.+4.j 5.+2.j]
numpy.complex
クラスを使用して、虚数を NumPy 配列に格納する
複雑なオブジェクトを作成する別の方法は、numpy モジュールによって提供される complex
クラスを使用することです。これにより、前のメソッドで説明したように、配列に格納できる複雑なオブジェクトが返されます。
例えば、
a = np.complex(1 + 1j)
c = a * np.arange(5)
print(c)
出力:
[0.+0.j 1.+1.j 2.+2.j 3.+3.j 4.+4.j]
dtype
パラメータを使用して、虚数を NumPy 配列に格納する
配列で虚数を開始する別の方法は、いくつかの numpy 配列関数で dtype
パラメーターを指定することです。ご存知のとおり、numpy.zeros()
関数と numpy.ones()
関数を使用して、それぞれ 0 と 1 の配列を作成できます。ここで、dtype
パラメーターを complex
として指定して、複雑な値を持つ結果の配列を取得できます。
次のコードはこれを説明しています。
z = np.ones(4, dtype=complex) * 2
print(z)
出力:
[2.+0.j 2.+0.j 2.+0.j 2.+0.j]
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn