thường khi làm việc với numpy tôi thấy sự phân biệt gây phiền nhiễu - khi tôi lấy ra một véc tơ hoặc một hàng từ ma trận và sau đó thực hiện các thao tác với np.array
s thường có vấn đề.nump.array so với np.matrix (hiệu suất)
để giảm đau đầu, đôi khi tôi chỉ sử dụng np.matrix
(chuyển đổi tất cả np.arrays thành np.matrix
) chỉ để đơn giản. tuy nhiên, tôi nghi ngờ có một số hàm ý hiệu suất. bất cứ ai có thể bình luận như những gì những người có thể được và lý do tại sao?
có vẻ như cả hai chỉ là mảng bên dưới mui xe mà truy cập phần tử đơn giản là phép tính bù trừ để nhận giá trị, vì vậy tôi không chắc chắn nếu không đọc toàn bộ nguồn có thể khác biệt.
đặc biệt hơn, những gì tác động hiệu suất thực hiện điều này có:
v = np.matrix([1, 2, 3, 4])
# versus the below
w = np.array([1, 2, 3, 4])
nhờ
Bản sao của [http://stackoverflow.com/questions/4151128/what-are-the-differences-between-numpy-arrays-and-matrices-which-one-should-iu](http://stackoverflow .com/question/4151128/what-are-the-different-giữa-numpy-arrays-and-matrix-which-one-should-iu) – jozzas
có, nhưng câu hỏi của tôi là về hiệu suất, không được đề cập trong bài đăng đó . Tôi sẽ chỉnh sửa câu hỏi của mình để làm cho tiêu điểm đó rõ ràng hơn. – lollercoaster
Tôi nghi ngờ rằng có bất kỳ ý nghĩa hiệu suất đáng kể, nhưng nó là loại khó để nói mà không biết chính xác những gì bạn đang lập kế hoạch * làm * với đối tượng khi bạn tạo ra nó. Tại sao không thực hiện một số chức năng kiểm tra và thử 'timeit'? – mgilson