Pythonで行列の積を計算する
PythonのNumPyの行列の積を計算してみます。
目次
dotメソッドの使い方
行列の積を計算するにはdotメソッドを使います。
arr = numpy.dot(a, b, [out])
変数 |
型 |
内容 |
---|---|---|
a |
array_like |
第1の行列。 |
b |
array_like |
第2の行列。 |
out |
ndarray |
省略可。規定値はNone。 |
arr |
ndarray |
第1の行列と第2の行列の積。 |
試してみるのが早いでしょう。
行列の積を計算した例
>>> import numpy as np
>>> a = np.array([[2,1],[1,0]])
>>> a
array([[2, 1],
[1, 0]])
>>> b = np.array([[1,-1],[0,-2]])
>>> b
array([[ 1, -1],
[ 0, -2]])
>>> np.dot(a,b)
array([[ 2, -4],
[ 1, -1]])
>>> np.dot(b,a)
array([[ 1, 1],
[-2, 0]])
行列の積なので、かける順番によって答えが変わります。
スカラーと行列の積を計算した例
では、片方の引数をスカラーにしたらどうなるでしょうか。
>>> import numpy as np
>>> a = np.array([[2,1],[1,0]])
>>> a
array([[2, 1],
[1, 0]])
>>> np.dot(a,5)
array([[10, 5],
[ 5, 0]])
>>> np.dot(5,a)
array([[10, 5],
[ 5, 0]])
各要素にスカラー値がかかりました。
1次元行列の積を計算した例
では、1次元の行列同士だったらどうなるでしょうか。
>>> x = np.array([1,3])
>>> x
array([1, 3])
>>> y = np.array([5,7])
>>> y
array([5, 7])
>>> np.dot(x,y)
26
ベクトルの内積が計算されました。
公開日
広告
Pythonの数値計算カテゴリの投稿
- NumPyで転置行列を取得する
- NumPyの定数
- Pythonで2つの行列の対応する要素の最大値の行列を作る
- Pythonで2次元メッシュを作る
- Pythonで値が一番大きい要素のインデックスを探す
- Pythonで値が一番小さい要素のインデックスを探す
- Pythonで指定した数値以上の最小の整数を計算する
- Pythonで等間隔の数字の列を作る
- Pythonで等間隔の数字の列を作る(arange編)
- Pythonで行列の次元を調べる
- Pythonで行列の積を計算する
- Pythonで零行列を作る
- PythonのNumPyの行列の書き換えを禁止したり許可したりする
- Pythonの行列のサイズを調べる