Tôi vừa mới bắt đầu học SciPy và đang đấu tranh với các tính năng cơ bản nhất.Sản phẩm Dot của một vector trong SciPy/NumPy (nhận ValueError: đối tượng không được căn chỉnh)
Hãy xem xét các vector theo tiêu chuẩn:
In [6]: W=array([[1],[2]])
In [7]: print W
[[1]
[2]]
Nếu tôi hiểu nó một cách chính xác, điều này sẽ là đại diện scipy của một 2x1 vector toán học tiêu chuẩn, như thế này:
(1)
(2)
Dấu chấm sản phẩm của vector này chỉ đơn giản là 1*1+2*2=5
. Tuy nhiên, điều này không hoạt động trong SciPy:
In [16]: dot(W, W)
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
/home/ingo/<ipython-input-16-961b62a82495> in <module>()
----> 1 dot(W, W)
ValueError: objects are not aligned
Lưu ý rằng các công việc sau đây. Đây phải là một vectơ có dạng (1 2)
nếu tôi không nhầm.
In [9]: V=array([1,2])
In [10]: print V
[1 2]
In [11]: dot(V, V)
Out[11]: 5
Quan niệm sai lầm của tôi là gì? Tôi đang làm gì sai?
Bạn có thể quên "hàng" và "cột" khi sử dụng * mảng *. Lưu ý rằng bạn cần nó khi sử dụng * ma trận *. – astrojuanlu