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

Hoán đổi 2 hàng cuối DataFrame Python pandas

Giả sử bạn muốn hoán đổi vị trí của 2 hàng cuối cùng trong DataFrame.

Giải pháp

  • Tạo DataFrame.
  • Lưu hàng cuối vào biến tạm: temp = df.iloc[-1].
  • Gán hàng cuối = hàng lến cuối: df.iloc[-1] = df.iloc[-2].
  • Gán hàng lến cuối = temp: df.iloc[-2] = temp.

Mã ví dụ

import pandas as pd

data = {
    'Name': ['David', 'Adam', 'Bob', 'Alex', 'Serina'],
    'Age': [13, 12, 12, 13, 12],
    'Maths': [98, 59, 66, 95, 70],
    'Science': [75, 96, 55, 49, 78],
    'English': [79, 45, 70, 60, 80]
}
df = pd.DataFrame(data)

print("Trước hoán đổi:\n", df)

temp = df.iloc[-1].copy()
df.iloc[-1] = df.iloc[-2]
df.iloc[-2] = temp

print("\nSau hoán đổi:\n", df)

Kết quả

Trước hoán đổi:
    Name  Age  Maths  Science  English
0  David   13     98       75       79
1   Adam   12     59       96       45
2    Bob   12     66       55       70
3   Alex   13     95       49       60
4 Serina   12     70       78       80

Sau hoán đổi:
    Name  Age  Maths  Science  English
0  David   13     98       75       79
1   Adam   12     59       96       45
2    Bob   12     66       55       70
3 Serina   12     70       78       80
4   Alex   13     95       49       60

Lưu ý: Dùng .copy() để tránh tham chiếu chung. Cách khác: df.iloc[[-1, -2]] = df.iloc[[-2, -1]].values.