Tôi có 4 mảng NumPy, mỗi mảng có hình dạng (5,5). Tôi muốn xếp chúng sao cho tôi có được một mảng hình mới (5,5,4). tôi đã thử sử dụng Show
nhưng, vì tôi chưa quen với việc sử dụng NumPy, tôi không thể hiểu tại sao điều đó lại tạo ra hình dạng (4, 5, 5) thay vì (5, 5, 4). Có phương pháp nào khác mà tôi nên sử dụng không? Ví dụ, 4 mảng
khi xếp chồng lên nhau tôi đang mong đợi
Điều này hoạt động như mong đợi với ngăn xếp nhưng sẽ cho hình dạng (4,2,2) thay vì (2,2,4). Theo hiểu biết của tôi, hình dạng này là (hàng, cột, độ sâu) Tôi có đúng không? Lấy một chuỗi các mảng và xếp chúng dọc theo trục thứ ba để tạo thành một mảng duy nhất. Xây dựng lại các mảng chia cho. Đây là một cách đơn giản để xếp các mảng 2D (hình ảnh) thành một mảng 3D duy nhất để xử lý Thông sốtup. dãy các mảng trả lại xếp chồng lên nhau. ndarray
Xem thêm Ngăn xếp dọc theo trục đầu tiên. Xếp dọc theo trục thứ hai. Tham gia mảng. Tách mảng dọc theo trục thứ baghi chú Tương đương với np. nối(tup, axis=2) . ví dụ >>> a = np.array((1,2,3)) >>> b = np.array((2,3,4)) >>> np.dstack((a,b)) array([[[1, 2], [2, 3], [3, 4]]]) >>> a = np.array([[1],[2],[3]]) >>> b = np.array([[2],[3],[4]]) >>> np.dstack((a,b)) array([[[1, 2]], [[2, 3]], [[3, 4]]]) NumPy là một thư viện Python nổi tiếng dùng để làm việc với mảng. Một trong những chức năng quan trọng của thư viện này là stack() Điểm quan trọng
Thông số
Ví dụ 1. xếp chồng hai mảng 1dcon trăn
>>> a = np.array([[1],[2],[3]]) >>> b = np.array([[2],[3],[4]]) >>> np.dstack((a,b)) array([[[1, 2]], [[2, 3]], [[3, 4]]])0 , numpy as np 0numpy as np 1
đầu ra –
Lưu ý, đầu ra là mảng 2 chiều. Chúng được xếp chồng lên nhau theo hàng. Bây giờ, hãy thay đổi trục thành 1 con trăn
đầu ra –
Ở đây, stack() lấy 2 mảng 1-D và xếp chúng lần lượt như thể nó lấp đầy các phần tử trong mảng mới theo cột con trăn
đầu ra –
-1 đại diện cho 'chiều không gian cuối cùng'. Ở đây có thể có 2 trục. 0 và 1. Vì vậy, -1 giống như 1 Ví dụ #2. xếp chồng hai mảng 2dPython3
>>> a = np.array([[1],[2],[3]]) >>> b = np.array([[2],[3],[4]]) >>> np.dstack((a,b)) array([[[1, 2]], [[2, 3]], [[3, 4]]])0 , numpy as np 0np.array([ 0
1. xếp chồng với axis=0 Python3
đầu ra –
Hãy tưởng tượng như thể chúng được xếp chồng lên nhau và tạo thành một mảng 3 chiều 2. xếp chồng với trục = 1 Python3
Đầu ra – mảng 3D. Kích thước thứ nhất có hàng thứ nhất. Kích thước thứ 2 có hàng thứ 2. [Xếp chồng theo hàng]
3. xếp chồng với trục = 2 Python3
>>> a = np.array([[1],[2],[3]]) >>> b = np.array([[2],[3],[4]]) >>> np.dstack((a,b)) array([[[1, 2]], [[2, 3]], [[3, 4]]])0 # input array 7Đầu ra – mảng 3D. Kích thước thứ nhất có hàng thứ nhất. Kích thước thứ 2 có hàng thứ 2. [Xếp chồng theo cột]
Ví dụ #2. xếp chồng nhiều hơn hai mảng 2d1. với trục = 0. chỉ cần xếp chồng lên nhau. Python3
>>> a = np.array([[1],[2],[3]]) >>> b = np.array([[2],[3],[4]]) >>> np.dstack((a,b)) array([[[1, 2]], [[2, 3]], [[3, 4]]])0 , numpy as np 0np.array([ 0
đầu ra –
2. với trục =1 (xếp chồng theo hàng) Python3
đầu ra –
3. với trục =2 (xếp chồng theo cột) con trăn
>>> a = np.array([[1],[2],[3]]) >>> b = np.array([[2],[3],[4]]) >>> np.dstack((a,b)) array([[[1, 2]], [[2, 3]], [[3, 4]]])0 # input array 7đầu ra-
Ví dụ #3. xếp chồng hai mảng 3d1. trục=0. chỉ cần xếp chồng lên nhau Python3
>>> a = np.array([[1],[2],[3]]) >>> b = np.array([[2],[3],[4]]) >>> np.dstack((a,b)) array([[[1, 2]], [[2, 3]], [[3, 4]]])0 , numpy as np 0np.array([ 0
đầu ra –
2. với trục = 1 Python3
đầu ra - Hãy tưởng tượng như thể mảng kết quả chiếm mặt phẳng thứ nhất của mỗi mảng cho thứ nguyên thứ nhất, v.v. Bạn có thể có một mảng 3d trong python không?Để tạo một mảng ba chiều, chúng ta truyền đối tượng đại diện cho x by y by z trong python, trong đó x là danh sách lồng nhau trong đối tượng, y là danh sách lồng nhau bên trong danh sách lồng nhau x và z là giá trị bên trong mỗi y . Mảng ba chiều vừa tạo được lưu trữ trong biến có tên là threedimarray
Cách xếp 2Sử dụng NumPy, chúng ta có thể thực hiện nối nhiều mảng 2D theo nhiều cách và phương thức khác nhau. . Phương pháp 1. Sử dụng hàm nối () Phương pháp 2. Sử dụng hàm stack() Phương pháp 3. Sử dụng hàm hstack() Phương pháp 4. Sử dụng hàm vstack() Phương pháp 5. Sử dụng hàm dstack() Python có hỗ trợ mảng đa chiều không?Trong Python, Mảng đa chiều có thể được triển khai bằng cách khớp một hàm danh sách bên trong một hàm danh sách khác , về cơ bản đây là một hoạt động lồng nhau cho . Ở đây, một danh sách có thể có một số giá trị thuộc bất kỳ loại dữ liệu nào được phân tách bằng dấu phân cách như dấu phẩy. |