Mô tả bài toán
Cho DataFrame nhân viên:
Id Age Salary 0 1 27 40000 1 2 22 25000 2 3 25 40000 3 4 23 35000 4 5 24 30000 5 6 32 30000 6 7 30 50000 7 8 28 20000 8 9 29 32000 9 10 27 23000
Yêu cầu: Tìm nhân viên có tuổi nhỏ nhất, in ra Id và Salary của người đó.
Kết quả mong đợi
Id Salary 1 2 25000
Giải pháp
- Tìm tuổi nhỏ nhất:
df['Age'].min(). - Lọc hàng có Age bằng giá trị min:
df[df['Age'] == df['Age'].min()]. - Chọn cột Id và Salary:
result[['Id', 'Salary']].
Ví dụ code hoàn chỉnh
import pandas as pd
data = [[1,27,40000],[2,22,25000],[3,25,40000],[4,23,35000],[5,24,30000],
[6,32,30000],[7,30,50000],[8,28,20000],[9,29,32000],[10,27,23000]]
df = pd.DataFrame(data, columns=('Id','Age','Salary'))
print("DataFrame gốc:")
print(df)
print("\nNhân viên tuổi nhỏ nhất (Id, Salary):")
result = df[df['Age'] == df['Age'].min()]
print(result[['Id', 'Salary']])
Đầu ra
DataFrame gốc: Id Age Salary 0 1 27 40000 1 2 22 25000 2 3 25 40000 3 4 23 35000 4 5 24 30000 5 6 32 30000 6 7 30 50000 7 8 28 20000 8 9 29 32000 9 10 27 23000 Nhân viên tuổi nhỏ nhất (Id, Salary): Id Salary 1 2 25000
Lưu ý: Nếu có nhiều nhân viên cùng tuổi nhỏ nhất, code trên sẽ trả về tất cả các hàng thỏa mãn.