NumPy
行列計算
>>> from numpy.linalg import inv, qr
>>> mat = np.array([[1, 2, 3], [2, 4, 5], [3, 5, 7]])
>>> mat.dot(inv(mat))
array([[ 1.00000000e+00, 0.00000000e+00, 2.22044605e-16],
[ 0.00000000e+00, 1.00000000e+00, 4.44089210e-16],
[ 0.00000000e+00, 0.00000000e+00, 1.00000000e+00]])
>>> q,r = qr(mat)
>>> q
array([[ -2.67261242e-01, -3.58568583e-01, -8.94427191e-01],
[ -5.34522484e-01, -7.17137166e-01, 4.47213595e-01],
[ -8.01783726e-01, 5.97614305e-01, -1.22124533e-15]])
>>> r
array([[-3.74165739, -6.68153105, -9.08688223],
[ 0. , -0.5976143 , -0.47809144],
[ 0. , 0. , -0.4472136 ]])
>>> q.dot(r)
array([[ 1., 2., 3.],
[ 2., 4., 5.],
[ 3., 5., 7.]])
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。