是否有一种简便的方法可以从Python中的现有表中的列中创建汇总表?我以前只使用过SQL,这可以通过以下代码完成:
选择AreaCode,Measure,sum(Value)作为“ VALUE”
来自表格
按AreaCode分组,度量
在当前表中(与上面的示例保持一致),我有数百行包含AreaCode,Measure和Value的行,这些行要聚合在Python的新表中
答案 0 :(得分:0)
给出一个名为table
的熊猫数据框,如下所示:
table
# AreaCode Measure Value
#0 A M1 13
#1 A M1 1
#2 B M1 15
#3 B M1 1
#4 A M2 54
#5 A M2 1
#6 B M2 17
#7 B M2 1
执行聚合的代码为:
table.groupby(['AreaCode', 'Measure'], as_index=False).sum()
# AreaCode Measure Value
#0 A M1 14
#1 A M2 55
#2 B M1 16
#3 B M2 18
生成table
并测试此解决方案的代码:
table = pd.DataFrame({'AreaCode': {0: 'A', 1: 'A', 2: 'B', 3: 'B', 4: 'A', 5: 'A', 6: 'B', 7: 'B'}, 'Measure': {0: 'M1', 1: 'M1', 2: 'M1', 3: 'M1', 4: 'M2', 5: 'M2', 6: 'M2', 7: 'M2'}, 'Value': {0: 13, 1: 1, 2: 15, 3: 1, 4: 54, 5: 1, 6: 17, 7: 1}})