Thêm và Xóa phần tử trong Numpy

Thêm xóa phần tử trong Numpy

NumPy là thư viện Python phổ biến dùng để xử lý dữ liệu dạng mảng nhiều chiều và thực hiện tính toán khoa học. Việc thêm hoặc xóa phần tử trong mảng là thao tác thường gặp, và NumPy cung cấp các hàm giúp thực hiện điều này dễ dàng mà không làm thay đổi dữ liệu gốc. Thành thạo các thao tác này giúp quá trình làm sạch và xử lý dữ liệu trở nên hiệu quả hơn. 

UniTrain sẽ giúp bạn làm quen với cách thêm, chèn và xóa phần tử trong mảng NumPy bằng ba hàm: numpy.append(), numpy.delete()numpy.insert(). Bạn sẽ được học cách sử dụng chúng, hiểu các tham số đầu vào, kết quả trả về và cách áp dụng trong các tình huống thực tế. 

Numpy.append() 

Cú pháp: 

numpy.append(array, values, axis=None) 
  • array: Mảng mà bạn muốn thêm giá trị vào.
  • values: Các giá trị bạn muốn thêm vào mảng.
  • axis (tùy chọn): Trục mà các giá trị sẽ được thêm vào. Nếu không chỉ định, mảng sẽ được làm phẳng (flatten) trước khi thêm.
import numpy as np 
arr1 = np.array([1, 2, 3]) 
arr2 = np.array([4, 5, 6]) 
  
#Thêm mảng 2 vào sau mảng 1
arr_appended = np.append(arr1, arr2) 
print(arr_appended) 

Kết quả sau khi thêm phần tử vào cuối mảng:

[1 2 3 4 5 6]

Thêm một giá trị vào cuối mảng:

arr_appended = np.append(arr1, 100)
print(arr_appended) 

Kết quả:
# [  1   2   3  100] 

Chúng ta cũng có thể thêm các mảng theo một chiều nhất định. Ví dụ, thêm các hàng vào mảng:

arr1 = np.array([[1, 2, 3], [4, 5, 6]])

# Thêm hàng mới 
arr2 = np.array([[7, 8, 9]]) 
arr_appended = np.append(arr1, arr2, axis=0) 
print(arr_appended) 

Kết quả:
[[1 2 3] 
  [4 5 6] 
  [7 8 9]] 

Thêm cột vào mảng bằng cách chỉ định axis=1:

arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5], [6]])
arr_appended = np.append(arr1, arr2, axis=1)
print(arr_appended)

Kết quả:
 [[1 2 5 6] 
  [3 4 5 6]] 

Numpy.delete()

Hàm numpy.delete được dùng để loại bỏ các phần tử trong mảng theo một trục cụ thể. Kết quả trả về là một mảng mới, trong đó các phần tử đã bị loại bỏ. Cú pháp của hàm như sau:

numpy.delete(arr, obj, axis=None) 
  • arr: Mảng ban đầu.
  • obj: Chỉ số hoặc đoạn (slice) xác định các phần tử cần xóa.
  • axis: Trục mà bạn muốn xóa các phần tử theo đó. Nếu không có, mảng sẽ được chuyển thành một mảng 1 chiều trước khi xóa.
import numpy as np 
arr = np.array([1, 2, 3, 4, 5]) 
# Xóa phần tử tại index=1 
np.delete(arr, 1) 
print(arr) 

Kết quả
[1 3 4 5]  

Chúng ta cũng có thể xóa dọc theo một trục như dòng hoặc cột:

import numpy as np 
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) 
#Xóa dòng thứ 2 (index 1) 
new_arr_rows = np.delete(arr, 1, axis=0)
print(new_arr_rows) 

Kết quả hiển thị:
 [[1 2 3]
 [7 8 9]]

# Xóa cột đầu tiên 
new_arr_cols = np.delete(arr, 0, axis=1)
print(new_arr_cols)

Kết quả
[[2 3]
 [5 6]
 [8 9]]

Numpy.insert() 

Hàm numpy.insert() được sử dụng để chèn các phần tử vào một mảng theo một trục được chỉ định. Cú pháp của nó như sau: 

numpy.insert(arr, obj, values, axis=None)
  • arr: Đây là mảng mà bạn muốn chèn thêm phần tử.

  • obj: Vị trí chỉ định nơi bạn sẽ chèn giá trị mới vào, có thể là một số, một danh sách các chỉ số, hoặc một đoạn cắt (slice).

  • values: Giá trị hoặc tập hợp giá trị sẽ được chèn vào trong mảng gốc. Có thể là một số đơn lẻ hoặc một mảng.

  • axis: Xác định chiều (trục) để thực hiện việc chèn. Nếu bạn không cung cấp tham số này, mảng sẽ được chuyển thành dạng một chiều trước khi thêm giá trị vào. 

import numpy as np 
arr = np.array([1, 2, 4, 5])   
# Thêm vào vị trí index=2
np.insert(arr, 2, 3)
print(arr) 

Kết quả 
# [1 2 3 4 5] 

Chúng ta cũng thể chèn theo một trục như hàng hoặc cột: 

arr = np.array([[1, 2], [5, 6]]) 

# Thêm dòng
np.insert(arr, 1, [[3, 4]], axis=0) 

Kết quả
[[1 2] 
 [3 4] 
 [5 6]] 

#Thêm cột
np.insert(arr, 1, [[10], [20]], axis=1) 

Kết quả 
 [[ 1 10  2] 
 [ 3 20  4] 
 [ 5 20  6]] 

Kết luận 

Trong hướng dẫn này, chúng ta đã học cách sử dụng các hàm append(), insert(), và delete() để thêm và xóa phần tử trong mảng — những kỹ năng cơ bản giúp làm việc với dữ liệu số để phân tích.

Cùng theo dõi Fanpage UniTrain để khám phá thêm nhiều thông tin hữu ích nhé!

Xem thêm:

Xử lý và trực quan hóa dữ liệu với Python

Nối các mảng dữ liệu trong Python

Bắt đầu với Pandas: Cách tạo Series và DataFrame một cách dễ dàng

Bài viết liên quan
[RECAP] Training Top 20 – myInsight – MDS Datathon Challenge 2025 – CLB Toán ứng dụng & Khoa học dữ liệu (MDS) – Đại học Ngoại Thương CSII TP. HCM (FTU2)

Tối ngày 18/05/2025, buổi training dành riêng cho Top 20 đội thi xuất sắc nhất cuộc thi myInsight – MDS Datathon Challenge 2025 đã diễn ra vô cùng thành công thông

Xem thêm
Khám Phá Tính Năng Nhóm và Phân Nhóm Dữ Liệu trong Power BI

Trong quá trình xây dựng biểu đồ, Power BI Desktop sẽ tự động tổng hợp dữ liệu thành các nhóm dựa trên các giá trị có trong tập dữ liệu gốc.

Xem thêm
[RECAP] Chuỗi Workshop MARKET-A – CLB Chứng khoán SCUE – Đại học Kinh tế TP. HCM (UEH)

Chiều ngày 15/05/2025 vừa rồi, UniTrain đã hân hạnh có mặt với vai trò là Nhà tài trợ Bạc tại buổi Workshop 2: OPTIVEST thuộc chuỗi chương trình Workshop MARKET-A do

Xem thêm
[RECAP] Cuộc thi Chuyên gia Phân tích Đầu Tư – IAE mùa 6, năm 2025 – Nhóm Sinh viên Nghiên cứu Tài chính (SFR) – Đại học Kinh tế TP. HCM (UEH)

Tối ngày 14/05/2025 vừa rồi, chung kết cuộc thi Chuyên gia Phân tích Đầu Tư – IAE mùa 6, năm 2025 do nhóm Sinh viên Nghiên cứu Tài chính (SFR) thuộc

Xem thêm