Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chuyển đổi cột sang chữ in hoa trong Pandas DataFrame

Hướng dẫn này trình bày 2 cách phổ biến để chuyển toàn bộ giá trị của một cột chuỗi sang chữ in hoa (uppercase) trong Pandas.

Cách 1: Sử dụng accessor .str.upper()

Cách nhanh nhất và được khuyến nghị (vectorized).

import pandas as pd

data = {
    'Name': ['Hafeez', 'Aslan', 'Kareem'],
    'Age': [19, 21, 18],
    'Profession': ['Developer', 'Engineer', 'Artist']
}
data_frame = pd.DataFrame(data)
print('---------------------Before-------------------')
print(data_frame)

# Chuyển cột Name sang uppercase
data_frame['Name'] = data_frame['Name'].str.upper()

print('---------------------After-------------------')
print(data_frame)

Kết quả

---------------------Before-------------------
    Name  Age Profession
0  Hafeez   19  Developer
1   Aslan   21   Engineer
2  Kareem   18     Artist
---------------------After-------------------
    Name  Age Profession
0  HAFEEZ   19  Developer
1   ASLAN   21   Engineer
2  KAREEM   18     Artist

Cách 2: Sử dụng apply() với lambda

Linh hoạt hơn nếu cần logic phức tạp, nhưng chậm hơn .str.upper().

# ... (tạo dataframe tương tự)
data_frame['Name'] = data_frame['Name'].apply(lambda name: name.upper())

Kết quả giống hệt cách 1.

So sánh

Phương phápƯu điểmNhược điểm
.str.upper()Nhanh, vectorized, code ngắn gọnChỉ dùng cho chuỗi, logic cố định
.apply(lambda x: x.upper())Tùy chỉnh logic phức tạpChậm hơn do overhead Python loop

Kết luận

Nên dùng .str.upper() cho trường hợp đơn giản. Dùng .apply() khi cần xử lý có điều kiện hoặc logic phức tạp hơn.