Giả sử bạn có Series và muốn tìm giá trị xuất hiện nhiều nhất (mode).
Giải pháp (thuật toán thủ công)
- Tạo Series.
- Duyệt qua các giá trị, đếm tần suất bằng
list.count(). - Theo dõi giá trị có count lớn nhất.
Mã ví dụ (thuật toán thủ công)
import pandas as pd
l = [1, 22, 3, 4, 22, 5, 22]
data = pd.Series(l)
print("Series:\n", data)
count = 0
max_count = data[0]
for i in data:
freq = l.count(i)
if freq > count:
count = freq
max_count = i
print("Phần tử lặp nhiều nhất:", max_count)
Kết quả
Series: 0 1 1 22 2 3 3 4 4 22 5 5 6 22 dtype: int64 Phần tử lặp nhiều nhất: 22
Cách nhanh hơn: Series.mode()
print("Mode (pandas):", data.mode().tolist())
Mode (pandas): [22]
Lưu ý: mode() trả về Series (có thể nhiều mode). Thuật toán thủ công O(n²) do count() trong vòng lặp, kém hiệu quả với dữ liệu lớn.