Giả sử bạn có DataFrame chứa chuỗi ký tự và muốn tính độ dài của từng phần tử trong toàn bộ DataFrame.
Giải pháp
- Tạo DataFrame với cột kiểu string.
- Sử dụng
df.applymap(lambda x: len(str(x)))để áp dụng hàmlen(str(x))cho mỗi ô.
Mã ví dụ
import pandas as pd
df = pd.DataFrame({
'Fruits': ["Apple", "Orange", "Mango", "Kiwi"],
'City': ["Shimla", "Sydney", "Lucknow", "Wellington"]
})
print("DataFrame là:\n", df)
print("\nĐộ dài các phần tử:")
print(df.applymap(lambda x: len(str(x))))
Kết quả
DataFrame là: Fruits City 0 Apple Shimla 1 Orange Sydney 2 Mango Lucknow 3 Kiwi Wellington Độ dài các phần tử: Fruits City 0 5 6 1 6 6 2 5 7 3 4 10
Giải thích:
applymap()áp dụng hàm cho mỗi phần tử (element-wise) của DataFrame.lambda x: len(str(x))chuyển giá trị thành chuỗi rồi lấy độ dài (an toàn cho cả số, NaN).- Khác với
apply()(áp dụng cho hàng/cột) vàmap()(chỉ cho Series).