Pythonでは、行列演算を行うためのライブラリとしてnumpy
が広く利用されています。特に、Python 3.5以降では、@
演算子を使って行列の積を計算することが可能になりました。
@演算子による行列積の計算
Python 3.5以降、行列Aと行列Bとの積ABを@
演算子を使ってA@B
と書けるようになりました。この@
演算子を用いることで、コーディングにおける可読性が向上します。
以下に、@
演算子を使った行列積の計算例を示します。
import numpy as np
# 行列Aを作る
a1_lis = [1, 0, 0]
a2_lis = [0, 2, 0]
a3_lis = [0, 0, 4]
A_matrix = np.matrix([a1_lis, a2_lis, a3_lis]) # "np.array"ではなく,"np.matrix"として行列オブジェクトを生成
# 行列Bを作る
b1_lis = [3, 0, 0]
b2_lis = [1, 2, 0]
b3_lis = [1, 0, 4]
B_matrix = np.matrix([b1_lis, b2_lis, b3_lis])
# C_matrix = A_matrix @ B_matrix
C_matrix = A_matrix @ B_matrix # C = A Bの計算
print(C_matrix)
このコードを実行すると、以下のような結果が得られます。
[[ 3 0 0]
[ 2 4 0]
[ 4 0 16]]
このように、Pythonの@
演算子を使うと、行列の積を直感的に計算することができます。
参考文献
- [Pythonによる科学・技術計算] @演算子による行列積の計算.