สมมติว่าคุณมี dataframe และผลลัพธ์สำหรับการสลับสองแถวสุดท้าย
Before swapping 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 After swapping 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
วิธีแก้ปัญหา
เพื่อแก้ปัญหานี้ เราจะปฏิบัติตามแนวทางด้านล่าง −
-
กำหนดดาต้าเฟรม
-
สร้างข้อมูลชั่วคราวเพื่อจัดเก็บแถวสุดท้าย มีการกำหนดไว้ด้านล่าง
temp = df.iloc[-1]
-
สลับค่าแถวที่สองเป็นแถวแรกและกำหนดข้อมูลชั่วคราวให้กับแถวที่สอง มีการกำหนดไว้ด้านล่าง
df.iloc[-1] = df.iloc[-2] df.iloc[-2] = temp
ตัวอย่าง
มาดูการใช้งานด้านล่างเพื่อความเข้าใจที่ดีขึ้น -
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("Before swapping\n",df) temp = df.iloc[-1] df.iloc[-1] = df.iloc[-2] df.iloc[-2] = temp print("After swapping\n",df)
ผลลัพธ์
Before swapping 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 After swapping 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