Skip to Content
Python📦 Thư viện NumpyKhởi tạo mảng

Khởi tạo mảng

Có 6 cơ chế chung để tạo mảng:

  1. Chuyển đổi từ các cấu trúc Python khác (ví dụ: danh sách và tuple)
  2. Các hàm khởi tạo mảng nội tại của NumPy (ví dụ: arange, ones, zeros, v.v.)
  3. Sao chép, nối hoặc thay đổi các mảng hiện có
  4. Đọc mảng từ đĩa, từ các định dạng tiêu chuẩn hoặc tùy chỉnh
  5. Tạo mảng từ các byte thô thông qua việc sử dụng chuỗi hoặc bộ đệm
  6. Sử dụng các hàm thư viện đặc biệt (ví dụ: random)

Chuyển đổi các chuỗi Python sang mảng NumPy

Các mảng NumPy có thể được định nghĩa bằng các chuỗi Python như danh sách (list) và tuple.

import numpy as np # Mảng 1D a1D = np.array([1, 2, 3, 4]) # Mảng 2D a2D = np.array([[1, 2], [3, 4]]) # Mảng 3D a3D = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])

Khi bạn sử dụng numpy.array, bạn có thể chỉ định dtype:

np.array([127, 128, 129], dtype=np.int16)

Các hàm khởi tạo mảng nội tại của NumPy

Các hàm khởi tạo mảng 1D

numpy.arange thường cần ít nhất hai đầu vào: bắt đầu (start) và kết thúc (stop).

np.arange(10) # array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) np.arange(2, 10, dtype=float) # array([2., 3., 4., 5., 6., 7., 8., 9.]) np.arange(2, 3, 0.1) # array([2. , 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9])

numpy.linspace sẽ tạo các mảng với số lượng phần tử được chỉ định và giãn cách đều nhau giữa các giá trị bắt đầu và kết thúc được chỉ định.

np.linspace(1., 4., 6) # array([1. , 1.6, 2.2, 2.8, 3.4, 4. ])

Các hàm khởi tạo mảng 2D

numpy.eye định nghĩa một ma trận đơn vị 2D.

np.eye(3) # array([[1., 0., 0.], # [0., 1., 0.], # [0., 0., 1.]])

numpy.diag có thể định nghĩa mảng 2D hình vuông với các giá trị cho trước dọc theo đường chéo, hoặc nếu được truyền một mảng 2D, nó sẽ trả về một mảng 1D chỉ chứa các phần tử trên đường chéo.

np.diag([1, 2, 3]) # array([[1, 0, 0], # [0, 2, 0], # [0, 0, 3]])

Các hàm khởi tạo mảng ndarray chung

  • numpy.zeros: Tạo một mảng chứa đầy các giá trị 0.
  • numpy.ones: Tạo một mảng chứa đầy các giá trị 1.
np.zeros((2, 3)) # array([[0., 0., 0.], # [0., 0., 0.]]) np.ones((2, 3)) # array([[1., 1., 1.], # [1., 1., 1.]])
Last updated on