นุ่น: วิธีคำนวณผลรวมสะสมต่อกลุ่ม


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

 df[' cumsum_col '] = df. groupby ([' col1 '])[' col2 ']. cumsum ()

สูตรเฉพาะนี้จะคำนวณผลรวมสะสมของ col2 ซึ่งจัดกลุ่มตาม col1 และแสดงผลลัพธ์ในคอลัมน์ใหม่ที่ชื่อว่า cumsum_col

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

ตัวอย่าง: คำนวณผลรวมสะสมต่อกลุ่มใน Pandas

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' store ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'],
                   ' sales ': [4, 7, 10, 5, 8, 9, 12, 15, 10, 8]})

#view DataFrame
print (df)

  blind sales
0 to 4
1 to 7
2 to 10
3 to 5
4 to 8
5 B 9
6 B 12
7 B 15
8 B 10
9 B 8

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

 #add column that shows cumulative sum of sales by store
df[' cumsum_sales '] = df. groupby ([' store '])[' sales ']. cumsum ()

#view updated DataFrame
print (df)

  store sales cumsum_sales
0 to 4 4
1 to 7 11
2 to 10 21
3 to 5 26
4 to 8 34
5 B 9 9
6 B 12 21
7 B 15 36
8 B 10 46
9 B 8 54

คอลัมน์ cumsum_sales แสดงยอดขายสะสม โดยจัดกลุ่มตามร้านค้าแต่ละแห่ง

หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มของฟังก์ชัน cumsum ใน pandas ได้ที่นี่

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

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

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

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

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