Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python NumPyのangle()関数で複素数の偏角をラジアンで取得する方法

Pythonで複素数の偏角(角度)を返すには、NumPyの numpy.angle() メソッドを使用します。このメソッドは、複素平面上の正の実軸から反時計回りに測った角度を、範囲 (-π, π] で返し、戻り値のデータ型は numpy.float64 になります。

numpy.angle() の主なパラメータ

  • 第1引数 z: 複素数、または複素数のシーケンス(配列)を指定します。
  • 第2引数 deg: True を指定すると角度が「度」で返され、False(デフォルト)の場合は「ラジアン」で返されます。

実行手順

1. 必要なライブラリをインポートする

import numpy as np

2. array()メソッドで配列を作成する

arr = np.array([1.0, 1.0j, 1+1j])

3. 配列を表示する

print("配列...\n", arr)

4. 配列のデータ型を確認する

print("\n配列の型...\n", arr.dtype)

5. 配列の次元を確認する

print("\n配列の次元...\n", arr.ndim)

6. 配列の形状を確認する

print("\n配列の形状...\n", arr.shape)

7. numpy.angle()で偏角を求める

Python NumPyの numpy.angle() メソッドを使って、複素数の偏角を返します。このメソッドは、複素平面上の正の実軸から反時計回りの角度を範囲 (-π, π] で返し、データ型は numpy.float64 です。

print("\n結果(ラジアン)...\n", np.angle(arr))

完全なコード例

import numpy as np

# array()メソッドで配列を作成
arr = np.array([1.0, 1.0j, 1+1j])

# 配列を表示
print("配列...\n", arr)

# 配列の型を取得
print("\n配列の型...\n", arr.dtype)

# 配列の次元を取得
print("\n配列の次元...\n", arr.ndim)

# 配列の形状を取得
print("\n配列の形状...\n", arr.shape)

# numpy.angle()メソッドを使って複素数の偏角を返す
# 正の実軸から反時計回りの角度を範囲(-π, π]で返し、dtypeはnumpy.float64
print("\n結果(ラジアン)...\n", np.angle(arr))

出力結果

配列...
[1.+0.j 0.+1.j 1.+1.j]

配列の型...
complex128

配列の次元...
1

配列の形状...
(3,)

結果(ラジアン)...
[0.         1.57079633 0.78539816]

上記の出力から、実数 1.0 の偏角は 0 ラジアン、純虚数 1.0j の偏角は約 1.5708 ラジアン(π/2)、複素数 1+1j の偏角は約 0.7854 ラジアン(π/4)であることがわかります。角度を「度」で取得したい場合は、np.angle(arr, deg=True) のように第2引数に True を指定してください。

  1. Python・Pandasでインデックスのデータを表す配列を取得する方法(index.values)

    PandasのIndexオブジェクトに格納されているデータをNumPy配列として取得したい場合は、index.valuesプロパティを使用します。このプロパティは、インデックスの各要素を含む配列を返してくれるため、データの抽出や他の処理への受け渡しが簡単に行えます。 index.valuesプロパティの基本的な使い方 まず、必要なライブラリをインポートします。 import pandas as pd 次に、Indexオブジェクトを作成します。ここでは、交通手段の名前を要素とするインデックスを作成してみましょう。 index = pd.Index([Car,Bike,Truck,Ship,Air

  2. Pythonでサブ配列を1回反転するだけで配列がソートされるかどうかを判定する方法

    すべての要素がユニーク(重複なし)である配列 nums があるとします。この配列の部分配列(サブ配列)を1つだけ反転したとき、配列全体がソートされた状態になるかどうかを判定するのが本記事のテーマです。なお、配列がすでにソート済みの場合も True を返します。 たとえば、入力が nums = [4,6,27,25,15,9,37,42] の場合を考えてみましょう。[27,25,15,9] の部分を反転すると [4,6,9,15,25,27,37,42] となり、配列全体が昇順に整列します。したがって、この場合の出力は True になります。 アルゴリズムのアプローチ この問題は、配列を一