Ben Python kullanılarak en küçük kareler AX = B çözmek için nasıl biliyorum:Python'da ağırlık matrisi ile en küçük kareler nasıl kullanılır?
Örnek:
A=[[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,0,0]]
B=[1,1,1,1,1]
X=numpy.linalg.lstsq(A, B)
print X[0]
# [ 5.00000000e-01 5.00000000e-01 -1.66533454e-16 -1.11022302e-16]
Ama ne bir ağırlık matrisi Kimlik olmamak ile bu aynı denklemi çözme konusunda:
A.X = B (W)
Örnek:
A=[[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,0,0]]
B=[1,1,1,1,1]
W=[1,2,3,4,5]
Adva tarafından teşekkürler nce,
Bu bağlantıya baktınız: http://stackoverflow.com/questions/19624997/understanding-scipys-least-square-function-with-irls – xnx
Evet; Denedim: B = numpy.dot (B, W) çözmeden önce, ama bir mesajım var: numpy.linalg.linalg.LinAlgError: verilen 0 boyutlu dizi. Dizi iki boyutlu –
olmalıdır. İki boyutlu dizilerin nokta çarpımını alırsanız skaler elde edersiniz. Belki de B unsurlarını basitçe W ile çarpmak mı istiyorsunuz? Burada Python listesi yerine numpy dizileri kullanmak daha iyidir. – xnx