Mô tả bài toán
Cho DataFrame chứa thông tin học sinh với cột Grade (xếp loại):
Id Name Grade 0 1 stud1 A 1 2 stud2 B 2 3 stud3 C 3 4 stud4 A 4 5 stud5 A
Yêu cầu: In ra tên của các học sinh có Grade == 'A'.
Kết quả mong đợi
0 stud1 3 stud4 4 stud5 Name: Name, dtype: object
Giải pháp
Sử dụng boolean indexing để lọc các hàng có Grade bằng 'A', sau đó chọn cột Name.
- Tạo DataFrame.
- Lọc:
df[df['Grade'] == 'A']. - Chọn cột Name:
result['Name'].
Ví dụ code hoàn chỉnh
import pandas as pd
data = [[1,'stud1','A'],[2,'stud2','B'],[3,'stud3','C'],[4,'stud4','A'],[5,'stud5','A']]
df = pd.DataFrame(data, columns=('Id','Name','Grade'))
print("DataFrame gốc:")
print(df)
print("\nTên học sinh loại A:")
result = df[df['Grade'] == 'A']
print(result['Name'])
Đầu ra
DataFrame gốc: Id Name Grade 0 1 stud1 A 1 2 stud2 B 2 3 stud3 C 3 4 stud4 A 4 5 stud5 A Tên học sinh loại A: 0 stud1 3 stud4 4 stud5 Name: Name, dtype: object
Mở rộng: Nếu chỉ muốn danh sách tên thuần túy (list), có thể dùng result['Name'].tolist().