Để thực hiện group-by và tính tổng trong Python Pandas, ta dùng groupby(cột).sum().
Các bước
- Tạo dữ liệu bảng hai chiều df.
- In DataFrame đầu vào df.
- Tính groupby sum dùng df.groupby().sum(). Hàm này lấy một cột cho trước, sắp xếp giá trị của nó, sau đó dựa trên thứ tự đã sắp xếp, nó cũng sắp xếp các giá trị của các cột khác.
- In kết quả groupby sum.
Ví dụ
import pandas as pd
df = pd.DataFrame({
"Apple": [5, 2, 7, 0],
"Banana": [4, 7, 5, 1],
"Carrot": [9, 3, 5, 1]
})
print("Input DataFrame 1 is:\n", df)
g_sum = df.groupby(['Apple']).sum()
print("Group by Apple is:\n", g_sum)
Kết quả đầu ra
Input DataFrame 1 is:
Apple Banana Carrot
0 5 4 9
1 2 7 3
2 7 5 5
3 0 1 1
Group by Apple is:
Banana Carrot
Apple
0 1 1
2 7 3
5 4 9
7 5 5
Giải thích: DataFrame được nhóm theo cột "Apple". Với mỗi giá trị duy nhất của Apple, các cột số còn lại (Banana, Carrot) được tính tổng. Kết quả có index là các giá trị duy nhất của Apple.