Trong phép nhân ma trận, giả sử rằng A
là ma trận 3 x 2 (3 hàng, 2 cột) và B
là ma trận 2 x 4 (2 hàng, 4 cột), sau đó nếu ma trận C = A * B
, sau đó C
phải có 3 hàng và 4 cột. Tại sao numpy không làm phép nhân này? Khi tôi thử mã sau, tôi gặp lỗi: ValueError: operands could not be broadcast together with shapes (3,2) (2,4)
Hình nhân số ma trận dạng khối
a = np.ones((3,2))
b = np.ones((2,4))
print a*b
Tôi cố gắng chuyển đổi A và B và alwasy có cùng câu trả lời. Tại sao? Làm thế nào để làm phép nhân ma trận trong trường hợp này?
Bạn nên cẩn thận với phần mở rộng narse.linalg numpy xác định lớp "LinearOperator". Trong lớp này, toán tử "*" được hiểu là sản phẩm dấu chấm phẩy thông thường. – Guillaume
khi nào người ta nên sử dụng ma trận và mảng ma trận? Cho đến gần đây tôi thậm chí không biết rằng có một ma trận API. –
@CharlieParker Tôi sẽ không khuyên bạn nên sử dụng ma trận, tôi tin rằng họ được dự kiến sẽ không được chấp nhận. – Daniel