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

Python NumPyで三角関数の逆余弦(arccos)を求める方法

逆余弦(arccos)は多価関数です。各 x に対して、cos(z) = x を満たす数 z は無限に存在します。慣例としては、実部が [0, π] の範囲に収まる角度 z を返します。

実数型の入力データに対して、arccos は常に実数の出力を返します。実数や無限大として表現できない値に対しては nan を返し、無効な浮動小数点エラーフラグを設定します。一方、複素数入力の場合、arccos は [-∞, -1] と [1, ∞] に分岐切断(branch cut)を持つ複素解析関数であり、前者には上側から、後者には下側から連続となります。なお、逆余弦は acos や cos-1 としても知られています。

numpy.arccos() メソッドとは

三角関数の逆余弦を求めるには、Python NumPy の numpy.arccos() メソッドを使用します。このメソッドは、指定された x 座標において単位円と交わる角度をラジアン [0, π] の範囲で返します。x がスカラーであれば、結果もスカラーとして返されます。

主なパラメータ

  • 第1パラメータ(x):単位円上の x 座標を指定します。実数引数の場合、定義域は [-1, 1] です。
  • 第2パラメータ(out・任意):結果を格納する ndarray を指定します。指定する場合は、入力がブロードキャストされる形状と一致している必要があります。省略した場合や None を指定した場合は、新しく確保された配列が返されます。タプルを渡す場合は、その長さが出力の数と一致していなければなりません。
  • 第3パラメータ(where・任意):入力全体にブロードキャストされる条件を指定します。条件が True の位置では out 配列に ufunc の結果が設定され、それ以外の位置では out 配列は元の値を保持します。

実装手順

まず、必要なライブラリをインポートします。

import numpy as np

1 の arccos を求めます。

print("\nResult...", np.arccos(1))

-1 の arccos を求めます。

print("\nResult...", np.arccos(-1))

0 の arccos を求めます。

print("\nResult...", np.arccos(0))

0.3 の arccos を求めます。

print("\nResult...", np.arccos(0.3))

コード例

import numpy as np

# 三角関数の逆余弦を求めるには、Python NumPy の numpy.arccos() メソッドを使用します
# このメソッドは、指定された x 座標で単位円と交わる角度をラジアン [0, π] で返します。
# x がスカラーの場合、結果もスカラーになります。

print("Get the Trigonometric inverse cosine...")

# 1 の arccos を求める
print("\nResult...", np.arccos(1))

# -1 の arccos を求める
print("\nResult...", np.arccos(-1))

# 0 の arccos を求める
print("\nResult...", np.arccos(0))

# 0.3 の arccos を求める
print("\nResult...", np.arccos(0.3))

実行結果

Get the Trigonometric inverse cosine...

Result... 0.0

Result... 3.141592653589793

Result... 1.5707963267948966

Result... 1.2661036727794992

このように、numpy.arccos() を使えば、-1 から 1 までの値に対して対応する角度(ラジアン)を簡単に計算できます。例えば、arccos(-1) は π(約3.14159)、arccos(0) は π/2(約1.5708)となり、数学的な定義と一致した結果が得られます。

  1. Python Pandas – MultiIndexでレベルを取得する方法

    MultiIndex(マルチインデックス)のレベルを取得するには、PandasのMultiIndex.levelsプロパティを使用します。まずは必要なライブラリをインポートしましょう。import pandas as pdMultiIndexとは、pandasオブジェクトのための多階層(階層的)なインデックスオブジェクトのことです。ここでは、まず配列を作成します。arrays = [[1, 2, 3, 4, 5], [John, Tim, Jacob, Chris, Keiron]]「names」パラメータを指定すると、各インデックスレベルに任意の名前を設定できます。そして、from_arra

  2. Python・pandasで列のデータ型を取得する方法|info()メソッドの使い方

    pandasのDataFrameで各列のデータ型(dtype)を確認したい場合は、info()メソッドを使用します。このメソッドを呼び出すだけで、列名・非null件数・データ型・メモリ使用量といった概要情報を一括して取得できます。 まず、必要なライブラリをインポートしましょう。 import pandas as pd 次に、文字列型と整数型という異なるデータ型を持つ2つの列からなるDataFrameを作成します。 dataFrame = pd.DataFrame( { Student: [Jack, Robin, Ted, Marc, Scarlett, Kat, Jo