NumPy の配列における虚数

Manav Narula 2023年1月30日
  1. numpy.complex クラスを使用して、虚数を NumPy 配列に格納する
  2. dtype パラメータを使用して、虚数を NumPy 配列に格納する
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 Narula
Manav Narula avatar Manav Narula avatar

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