numpy聚合分组求值

import numpy as np
import pandas as pd
data = pd.read_csv('D://pythonlianxi//data.csv')
data['score2'] = data['score']*2
result = data.groupby(by=['class'])['score'].agg({
    '总分':np.sum,
    '人数':np.size,
    '平均值':np.mean,
    '方差':np.var,
    '标准差':np.std
})
result2 = data.groupby(by=['class', 'name'])[['score', 'score2']].agg([
    np.size,
    np.sum
])
print(result.index)
print(result.columns)
print(result['平均值'])

print(result2.index)
print(result2.columns)
print(result2['score'])

print(result2['score']['sum'])

Index(['一班', '三班', '二班'], dtype='object', name='class') Index(['总分', '人数', '平均值', '方差', '标准差'], dtype='object') class 一班    127.00 三班    121.00 二班    113.75 Name: 平均值, dtype: float64 MultiIndex(levels=[['一班', '三班', '二班'], ['庄艺家', '方伟君', '方小明', '朱凤', '朱志斌', '林良坤', '林龙', '许杰', '郑丽萍', '郑芬', '郭杰明', '陈丽灵', '黄志红']],            labels=[[0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2], [3, 4, 7, 8, 10, 0, 1, 2, 11, 5, 6, 9, 12]],            names=['class', 'name']) MultiIndex(levels=[['score', 'score2'], ['size', 'sum']],            labels=[[0, 0, 1, 1], [0, 1, 0, 1]])             size  sum class name            一班    朱凤       1  122       朱志斌      1  120       许杰       1  122       郑丽萍      1  140       郭杰明      1  131 三班    庄艺家      1  119       方伟君      1  136       方小明      1  114       陈丽灵      1  115 二班    林良坤      1  135       林龙       1   96       郑芬       1  119       黄志红      1  105 class  name 一班     朱凤      122        朱志斌     120        许杰      122        郑丽萍     140        郭杰明     131 三班     庄艺家     119        方伟君     136        方小明     114        陈丽灵     115 二班     林良坤     135        林龙       96        郑芬      119        黄志红     105 Name: sum, dtype: int64 Process finished with exit code 0

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值