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

Áp dụng uppercase cho cột trong Pandas DataFrame


Cách 1: str.upper() (Vectorized, khuyên dùng)

import pandas as pd

df = pd.DataFrame({
    'Day': ['mon', 'tue', 'wed', 'thu', 'fri'],
    'Subject': ['Math', 'english', 'science', 'music', 'games']
})

df['Day'] = df['Day'].str.upper()
print(df)

Kết quả

   Day Subject
0  MON   Math
1  TUE  english
2  WED  science
3  THU   music
4  FRI   games

Cách 2: apply() + lambda (linh hoạt hơn)

df = pd.DataFrame({
    'Day': ['mon', 'tue', 'wed', 'thu', 'fri'],
    'Subject': ['Math', 'english', 'science', 'music', 'games']
})

# Áp dụng cho cột Subject
df1 = df['Subject'].apply(lambda x: x.upper())
print(df1)

Kết quả

0      MATH
1   ENGLISH
2   SCIENCE
3     MUSIC
4     GAMES
Name: Subject, dtype: object

So sánh

Phương phápƯu điểmNhược điểm
.str.upper()Vectorized, nhanh, cú pháp ngắnChỉ dùng cho Series string
.apply(lambda x: x.upper())Linh hoạt, dùng được logic phức tạpChậm hơn (loop Python)

Kết luận

Dùng df['col'].str.upper() cho trường hợp đơn giản. Dùng .apply() khi cần logic tùy chỉnh phức tạp.