1
の過剰決定系を解きます、私はA, B, C, D
のパラメータを解決する必要があります。は、私は、フォームの式のかなり単純なシステムを有する線形方程式
私はnumpy.linalg.lstsq
で遊んでいましたが、マトリックスの形状を正しく得ることができません。これは私が失敗し
import numpy as np
N = 10000
x1, y1 = np.random.uniform(0., 5000., (2, N))
x2, y2 = np.random.uniform(0., 5000., (2, N))
# 1*A + 0*B + x2*C + y2*D = x1
# 0*A + 1*B + y2*C + x2*D = y1
l1 = np.array([np.ones(N), np.zeros(N), x2, y2])
l2 = np.array([np.zeros(N), np.ones(N), y2, x2])
M1 = np.array([l1, l2])
M2 = np.array([x1, y1])
ABCD = np.linalg.lstsq(M1, M2)[0]
print(ABCD)
を持っているものです。
numpy.linalg.linalg.LinAlgError: 3-dimensional array given. Array must be two-dimensional
私が間違って何をしているのですか?
ニース!私はすべての列を連結することを考えましたが、これはずっと短くなりました:-) – Omni
これは実際に動作します。ありがとうございました! – Gabriel