import pandas as pd
df = pd.DataFrame({
'category': ['A', 'A', 'B', 'B', 'C', 'C'],
'value': [10, 20, 30, 40, 50, 60]
})
df['total'] = df.groupby('category')['value'].transform('sum')
print(df)
输出结果:
category value total
0 A 10 30
1 A 20 30
2 B 30 70
3 B 40 70
4 C 50 110
5 C 60 110
SELECT *, SUM(value) OVER (PARTITION BY category) AS total
FROM my_table;
其中,my_table为数据表名称,category和value为分组和求和的列名。输出将包含原有列和计算出的总和列。
上一篇:按总和分组