1. Home
  2. プログラマーのための線形代数
  3. 行列の演算
  4. 行列の割り算

行列の割り算

行列の割り算は、線形代数において基本的な行列の演算の一つです。当ページでは、これについて以下のことがわかります。

このページでわかること

  • 行列の割り算とは何か
  • 行列の割り算のやり方
  • Python で行列の割り算

行列の割り算とは何か

行列とは」で述べた通り、行列はベクトルを変換するための写像(関数)です。そして行列の割り算は、何らかの目的で 2 つの関数で割り算を行なって、新しい 3 つ目の関数を作るということを意味します。

行列の割り算のイメージ

以上が行列の割り算です。

行列の割り算のやり方

行列の割り算は簡単です。以下の 2 つの行列があるとします。

\[\begin{eqnarray}
A=
\begin{pmatrix}
a_{1,1} & a_{1,2}\\
a_{2,1} & a_{2,2}
\end{pmatrix}, \ \ \
B=
\begin{pmatrix}
b_{1,1} & b_{1,2}\\
b_{2,1} & b_{2,2}
\end{pmatrix}
\end{eqnarray}\]

これらの行列同士で割り算を行うと、それぞれ同じ要素の値で掛け算が行われます。

\[\begin{eqnarray}
A / B=
\begin{pmatrix}
a_{1,1} \div b_{1,1}
&
a_{1,2} \div b_{1,2}\\
a_{2,1} \div b_{2,1}
&
a_{2,2} \div b_{2,2}\\
\end{pmatrix}
\end{eqnarray}\]

例として次の 2 つの行列の割り算を求めてみましょう。

\[\begin{eqnarray}
A=
\begin{pmatrix}
5 & 6\\
7 & 8
\end{pmatrix}, \ \ \
B=
\begin{pmatrix}
1 & 3\\
2 & 4
\end{pmatrix}
\end{eqnarray}\]

これらの行列同士で割り算を行うと、それぞれ同じ要素の値で割り算が行われます。

\[\begin{eqnarray}
A / B=
\begin{pmatrix}
5 & 2\\
3.5 & 2\\
\end{pmatrix}
\end{eqnarray}\]

なお行列の割り算は、2 つの行列の行数と列数が同じである場合のみ可能です。

Pythonで行列の割り算

Python では NumPy で作成した行列同士を / 演算子で繋ぐことで割り算を求めることができます。

In [1]:
# NumPy のインポート
import numpy as np

# 1 つ目の行列の定義
A = np.array([[1,2,3],[4,5,6]])
print(A)
[[1 2 3]
 [4 5 6]]
In [2]:
# 2 つ目の行列の定義
B = np.array([[1,2,3],[4,5,6]])
print(B)
[[1 2 3]
 [4 5 6]]
In [3]:
# 行列の割り算
C = A / B
print(C)
[[1. 1. 1.]
 [1. 1. 1.]]