วิธีการคำนวณผลรวมสะสมแบบย้อนกลับในแพนด้า


สามารถใช้ฟังก์ชัน cumsum() เพื่อคำนวณผลรวมสะสมของค่าในคอลัมน์ของ DataFrame ของ pandas

คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อคำนวณ ผลรวมสะสมแบบย้อนกลับ ของค่าในคอลัมน์:

 df[' cumsum_reverse '] = df. loc [:: -1 , ' my_column ']. cumsum ()[:: -1 ]

ไวยากรณ์เฉพาะนี้เพิ่มคอลัมน์ใหม่ที่เรียกว่า cumsum_reverse ให้กับ DataFrame ของ pandas ที่แสดงผลรวมสะสมแบบย้อนกลับของค่าในคอลัมน์ที่มีป้ายกำกับ my_column

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: คำนวณผลรวมสะสมแบบย้อนกลับในแพนด้า

สมมติว่าเรามี DataFrame แพนด้าต่อไปนี้ซึ่งแสดงยอดขายรวมของร้านค้าเป็นเวลา 10 วันติดต่อกัน:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' day ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
                   ' sales ': [3, 6, 0, 2, 4, 1, 0, 1, 4, 7]})

#view DataFrame
df

      day sales
0 1 3
1 2 6
2 3 0
3 4 2
4 5 4
5 6 1
6 7 0
7 8 1
8 9 4
9 10 7

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อคำนวณ ผลรวมย้อนกลับ ของคอลัมน์ยอดขาย:

 #add new column that shows reverse cumulative sum of sales
df[' cumsum_reverse_sales '] = df. loc [:: -1 , ' sales ']. cumsum ()[:: -1 ]

#view updated DataFrame
df

day sales cumsum_reverse_sales
0 1 3 28
1 2 6 25
2 3 0 19
3 4 2 19
4 5 4 17
5 6 1 13
6 7 0 12
7 8 1 12
8 9 4 11
9 10 7 7

คอลัมน์ใหม่ชื่อ cumsum_reverse_sales จะแสดงยอดขายสะสม จากแถวสุดท้าย

ต่อไปนี้คือวิธีที่เราจะตีความค่าในคอลัมน์ cumsum_reverse_sales :

  • ผลรวมยอดขายสะสมสำหรับวันที่ 10 คือ 7
  • ผลรวมยอดขายสะสมสำหรับวันที่ 10 และวันที่ 9 คือ 11
  • ผลรวมยอดขายสะสมสำหรับวันที่ 10 วันที่ 9 และวันที่ 8 คือ 12
  • ผลรวมยอดขายสะสมสำหรับวันที่ 10 วันที่ 9 วันที่ 8 และวันที่ 7 คือ 12

และอื่นๆ

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ในแพนด้า:

วิธีรวมคอลัมน์เฉพาะใน Pandas
วิธีดำเนินการผลรวม GroupBy ใน Pandas
วิธีรวมคอลัมน์ตามเงื่อนไขใน Pandas

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *