เพื่อหาผลรวมเฉพาะแถวที่กำหนด ใช้เมธอด loc() ระบุดัชนีแถวเริ่มต้นและสิ้นสุดด้วยออเปอเรเตอร์ : ด้วย loc() คุณยังสามารถตั้งคอลัมน์ที่ต้องการรวมได้ สามารถแสดงผลในคอลัมน์ใหม่
ก่อนอื่น สร้าง DataFrame เรามีบันทึกสินค้า รวมถึง Opening และ Closing Stock -
dataFrame = pd.DataFrame({"Product": ["SmartTV", "ChromeCast", "Speaker", "Earphone"], "Opening_Stock": [300, 700, 1200, 1500], "Closing_Stock": [200, 500, 1000, 900]})
ผลรวมของบางแถว เช่น 2 แถวแรก ชื่อคอลัมน์ก็ระบุใน loc() คือ Opening_Stock และ Closing_Stock แสดงผลในคอลัมน์ใหม่ "Sum_Result" -
dataFrame['Sum_Result'] = dataFrame.loc[0:1, ["Opening_Stock", "Closing_Stock"]].sum(axis=1)
ตัวอย่าง
โค้ดสมบูรณ์ -
import pandas as pd
dataFrame = pd.DataFrame({"Product": ["SmartTV", "ChromeCast", "Speaker", "Earphone"], "Opening_Stock": [300, 700, 1200, 1500], "Closing_Stock": [200, 500, 1000, 900]})
print("DataFrame...\n", dataFrame)
# sum of some rows
# Column names also mentioned in the loc() i.e. Opening_Stock and Closing_Stock
# displaying result in a new column Sum_Result
dataFrame['Sum_Result'] = dataFrame.loc[0:1, ["Opening_Stock", "Closing_Stock"]].sum(axis=1)
print("\nSumming some rows...\n", dataFrame)
ผลลัพธ์
จะผลิตผลลัพธ์ดังนี้ -
DataFrame... Closing_Stock Opening_Stock Product 0 200 300 SmartTV 1 500 700 ChromeCast 2 1000 1200 Speaker 3 900 1500 Earphone Summing some rows... Closing_Stock Opening_Stock Product Sum_Result 0 200 300 SmartTV 500.0 1 500 700 ChromeCast 1200.0 2 1000 1200 Speaker NaN 3 900 1500 Earphone NaN