配列 ベクトル 行列 統計

NumPy の dot で行列のかけ算を計算する

最終更新日 2023.02.18

NumPy では行列のかけ算は dot で計算します。

import numpy as np

A = np.array([[1, 1],
              [1, 1]])
B = np.array([[1, 2],
              [3, 4]])

C = np.dot(A, B)

print(C)
# [[4 6]
#  [4 6]]

3 次正方行列のかけ算を dot で計算する例:

import numpy as np

A = np.array([[1, 2, 3], [4, 5, 6], [1, 3, 5]])
B = np.array([[3, 1, 5], [1, 1, 1], [0, 1, 2]])

C = np.dot(A, B)

print(C)
# [[ 5  6 13]
#  [17 15 37]
#  [ 6  9 18]]

行列と縦ベクトルのかけ算:

import numpy as np

A = np.array([[1, 2],
              [3, 4]])
B = np.array([[1],
              [1]])

C = np.dot(A, B)

print(C)
# [[3]
#  [7]]

行列と単位行列のかけ算:

import numpy as np

I = np.eye(3)
A = np.array([[1, 2, 3], [4, 5, 6], [1, 3, 5]])

B = np.dot(A, I)
C = np.dot(I, A)

print(B)
# [[1. 2. 3.]
#  [4. 5. 6.]
#  [1. 3. 5.]]

print(C)
# [[1. 2. 3.]
#  [4. 5. 6.]
#  [1. 3. 5.]]

単位行列は eye で定義します。引数は次元を意味します。np.eye(3) は 3 次の単位行列です。