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

Python NumPyのnp.log2()で入力配列の底2の対数を計算する方法

PythonのNumPyで入力配列の各要素に対して底2の対数(log₂)を求めるには、numpy.log2()メソッドを使用します。

このメソッドは引数xの底2の対数を返します。xがスカラーの場合、戻り値もスカラーになります。

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

第1パラメータ:x — 入力値を指定します。配列のようなオブジェクト(array-like)を受け付けます。

第2パラメータ:out — 計算結果を格納する場所を指定します。指定する場合は、入力がブロードキャストされる形状と一致している必要があります。省略した場合やNoneを指定した場合は、新しく確保された配列が返されます。タプルで指定する際は、その長さが出力の数と一致していなければなりません。

第3パラメータ:where — 条件を指定します。この条件は入力に対してブロードキャストされ、条件がTrueの場所にはout配列にufuncの計算結果が設定されます。それ以外の場所では、out配列は元の値を保持します。なお、デフォルトのout=Noneで未初期化のout配列が作成された場合、条件がFalseとなった位置は初期化されないまま残る点に注意してください。

実行手順

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

import numpy as np

array()メソッドを使って配列を作成します。

arr = np.array([1, 2, 10])

作成した配列を表示します。

print("Array...\n", arr)

配列のデータ型を確認します。

print("\nOur Array type...\n", arr.dtype)

配列の次元数を取得します。

print("\nOur Array Dimension...\n", arr.ndim)

配列の形状を取得します。

print("\nOur Array Shape...\n", arr.shape)

numpy.log2()メソッドを使って、入力配列の底2の対数を計算して表示します。

print("\nResult...\n", np.log2(arr))

コード例全体

import numpy as np

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

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

# 配列のデータ型を取得
print("\nOur Array type...\n", arr.dtype)

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

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

# numpy.log2()メソッドで底2の対数を計算
# xがスカラーの場合、戻り値もスカラーになる
print("\nResult...\n", np.log2(arr))

実行結果

Array...
[ 1  2 10]

Our Array type...
int64

Our Array Dimension...
1

Our Array Shape...
(3,)

Result...
[0.         1.         3.32192809]

実行結果を見ると、配列[1, 2, 10]の各要素に対して底2の対数が計算され、[0.0, 1.0, 約3.32]という結果が得られていることがわかります。log₂(1)=0、log₂(2)=1となるため、計算結果は数学的に正しい値です。

  1. Pythonで複素数値入力の自然対数を計算する方法

    自然対数は指数関数の逆関数であり、log(exp(x)) = x という関係が成り立ちます。自然対数とは、e(ネイピア数)を底とする対数のことです。NumPyの np.log() メソッドは、入力xの自然対数を要素ごとに計算して返します。xがスカラーの場合はスカラー値を返します。np.log() の主なパラメータ第1パラメータは入力値で、配列状のオブジェクト(array-like)を指定します。第2パラメータの out は、計算結果を格納する場所です。指定する場合は、入力がブロードキャストされる形状と一致している必要があります。省略した場合や None を指定した場合は、新しく確保された配列が

  2. Python・NumPyで文字列配列の各要素の長さを取得する方法

    文字列配列の各要素の長さを要素ごとに取得したい場合は、PythonのNumPyが提供する numpy.char.str_len() メソッドを使用します。このメソッドは、各文字列の長さを格納した整数型の出力配列を返します。実行手順まず、必要なライブラリをインポートします。import numpy as np次に、1次元の文字列配列を作成します。arr = np.array([Amy, Scarlett, Katie, Brad, Tom])作成した配列を表示してみましょう。print(Array...\n,arr)配列のデータ型を確認します。print(\nArray datatype...\