Pythonでのnumpy.square()
Pythonのnumpy.square()関数は、元の配列の要素の2乗値を要素値として持つ新しい配列を返します。元の配列は変更されません。
Pythonのnumpy.square()の使用例
行列要素の二乗を迅速に取得するための便利な関数です。numpyのsquare()関数を整数、浮動小数点数、複素数型の配列要素の例を見てみましょう。
1. int型の配列の中の要素を2乗する numpy の square() メソッド
import numpy as np
# ints
array_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(f'Source Array:\n{array_2d}')
array_2d_square = np.square(array_2d)
print(f'Squared Array:\n{array_2d_square}')
出力:
Source Array:
[[1 2 3]
[4 5 6]]
Squared Array:
[[ 1 4 9]
[16 25 36]]
2.浮動小数点配列のnumpyのsquare()メソッド
import numpy as np
array_2d_float = np.array([1.2, 2.3, 5])
print(f'Source Array:\n{array_2d_float}')
array_2d_float_square = np.square(array_2d_float)
print(f'Squared Array:\n{array_2d_float_square}')
出力:
Source Array:
[1.2 2.3 5. ]
Squared Array:
[ 1.44 5.29 25. ]
浮動小数点配列内の整数が浮動小数点数に変換されたことに注意してください。
3. numpyのsquare()関数を使用して、複素数の配列を二乗する。
arr = np.array([1 + 2j, 2 + 3j, 4])
print(f'Source Array:\n{arr}')
arr_square = np.square(arr)
print(f'Squared Array:\n{arr_square}')
出力:
Source Array:
[1.+2.j 2.+3.j 4.+0.j]
Squared Array:
[-3. +4.j -5.+12.j 16. +0.j]
ここでは、整数要素が複素数に変換されます。参照:APIドキュメント