[NumPy Library-2] Mảng N-chiều Trong NumPy - Viblo
Có thể bạn quan tâm
ndarray trong NumPy là gì?
Mảng trong Numpy là một bảng gồm các phần tử (thường sẽ là số), dữ liệu trong mảng cùng một loại, được lập chỉ mục (index) bằng một bộ số nguyên dương. Trong Numpy, số chiều của mảng được gọi là cấp/bậc của mảng( hay còn gọi là mảng 1 chiều, mảng 2 chiều,..). Một bộ số nguyên cho kích thước của mảng dọc theo mỗi kích thước được gọi là hình dạng của mảng. Một lớp mảng trong Numpy được gọi là ndarray. Các phần tử trong mảng Numpy được truy cập bằng cách sử dụng dấu ngoặc vuông và có thể được khởi tạo bằng cách sử dụng các list Python lồng nhau.
[[ 1, 2, 3], [ 4, 2, 5]] Ở đây là một mảng cấp 2, hay còn gọi là mảng 2 chiều hay mảng 2 trục Chiều thứ nhất cólength bằng 2, chiều thứ 2 có length bằng 3 Hình dạng tổng thể của mảng có thể được kí hiệu là (2, 3) import numpy as np # Tạo mới một đối tượng mảng arr = np.array( [[ 4, 2, 2], [ 4, 3, 4]] ) # In ra loại của đối tượng mảng vừa được tạo print("Array thuộc loại: ", type(arr)) # In ra số chiều (trục) print("Số chiều: ", arr.ndim) # In ra hình dạng của mảng print("Dạng của mảng: ", arr.shape) # In ra tổng số phần tử print("Tổng số phần tử: ", arr.size) # In ra loại dữ liệu của phần tử trong mảng print("Array chứa các phần tử kiểu: ", arr.dtype)OUTPUT:
Array thuộc loại: <class 'numpy.ndarray'> Số chiều: 2 Dạng của mảng: (2, 3) Tổng số phần tử: 6 Array chứa các phần tử kiểu: int32Tạo mảng
Có nhiều cách khác nhau để tạo mảng trong NumPy:
Ví dụ:
- Chúng ta có thể tạo một mảng từ Python list thông thường hoặc tuple sử dụng array function. Kiểu dữ liệu của mảng kết quả được suy ra từ kiểu của các phần tử trong chuỗi.
- Thông thường, các phần tử của một mảng ban đầu không xác định, nhưng kích thước của thì được xác định. Do đó, NumPy cung cấp một số chức năng để tạo mảng với các phần tử mặc định ban đầu, hay còn biết đến như các phần tử để "tạm giữ chỗ"
- Ví dụ: np.zeros, np.ones, np.full, np.empty, v.v.
- Để tạo các chuỗi số, NumPy cung cấp một hàm tương tự với phạm vi trả về mảng thay vì danh sách.
- Định hình lại mảng: Chúng ta có thể sử dụng phương pháp định hình lại để định hình lại một mảng. Hãy xem xét một mảng có hình dạng (a1, a2, a3, ..., aN). Chúng ta có thể định hình lại và chuyển đổi nó thành một mảng khác với hình dạng (b1, b2, b3, ..., bM). Điều kiện bắt buộc duy nhất là: a1 x a2 x a3 x ... x aN = b1 x b2 x b3 x ... x bM. (nói cách khác là kích thước ban đầu của mảng vẫn không thay đổi.)
- Làm phẳng mảng: Chúng ta có thể sử dụng flatten method để có được một bản sao của mảng được thu gọn thành một chiều, hay nói cách khác là biến mảng hiện có thành mảng một chiều import numpy as np
OUTPUT:
Mảng với các phần tử kiểu float được tạo sử dụng list: [[1. 2. 4.] [5. 8. 7.]] Mảng được tạo sử dụng tuple: [1 3 2] Mảng được khởi tạo với tất cả các phần tử đều bằng không: [[0. 0. 0. 0.] [0. 0. 0. 0.] [0. 0. 0. 0.]] Mảng được tạo với các phần tử số phức. [[6.+0.j 6.+0.j 6.+0.j] [6.+0.j 6.+0.j 6.+0.j] [6.+0.j 6.+0.j 6.+0.j]]Array Indexing
Việc biết các khái niệm cơ bản về lập chỉ mục (index) mảng rất quan trọng để phân tích và thao tác đối tượng mảng. NumPy cung cấp nhiều cách để lập chỉ mục (index) mảng.
- Slicing: Giống như danh sách trong python, mảng NumPy có thể được cắt. Vì các mảng có thể là đa chiều, bạn cần chỉ định một lát cho mỗi chiều của mảng.
- Integer array indexing: Lập chỉ mục mảng số nguyên: Trong phương pháp này, các danh sách được truyền để lập chỉ mục cho từng chiều. Ánh xạ một đến một của các phần tử tương ứng được thực hiện để xây dựng một mảng tùy ý mới.
- Boolean array indexing: Phương pháp này được sử dụng khi chúng ta muốn chọn các phần tử từ mảng thỏa mãn một số điều kiện.
OUTPUT:
Mảng với 3 hàng đầu và cột xen kẽ (cột số 0 và số 2): [[-1. 0. ] [ 4. 6. ] [ 2.6 7. ]] Elements at indices (0, 3), (1, 2), (2, 1), (3, 0): [4. 6. 0. 3.] Các phần tử lớn hơn không là: [2. 4. 4. 6. 2.6 7. 8. 3. 4. 2. ]Còn nữa...
- Link tham khảo Trang chủ Thư viên NumPy
Từ khóa » Duyệt Mảng 2 Chiều Python
-
Mảng 2 Chiều Trong Python - Học Tin Cùng Thủ Khoa
-
Tập Hợp List Lồng Nhau, Ma Trận Và Mảng Nhiều Chiều - TEK4
-
Bài 11: Duyệt Mảng - Numpy Trong Python
-
Ma Trận Trong Python
-
Cách Xác định Mảng Hai Chiều Trong Python? - HelpEx
-
Mảng 2 Chiều - Python Dainganxanh
-
Ma Trận Trong Python Và Một Số Thao Tác Trong Ma Trận Python - T3H
-
1. Duyệt Mảng Numpy Bằng Np.nditer() - Lập Trình Từ Đầu
-
Viết Hàm Trả Về Danh Sách Hai Chiều Chuyển Vị. (Tham Số Là Danh ...
-
Mảng Trong Python - Techacademy
-
Mảng Là Gì? Cách Sử Dụng Mảng Trong Python - Blog
-
Kiểu List (mảng) Trong Python - Freetuts
-
2D Array Trong Python: Ví Dụ Về Danh Sách Hai Chiều
-
FundaML 2: Làm Việc Với Ma Trận - Machine Learning Cơ Bản