【Python】透视表、统计表、汇总表、报表

版权声明:相互学习,一起成长,转载请联系博主。 https://blog.csdn.net/sunyaowu315/article/details/88100911

【博客地址】:https://blog.csdn.net/sunyaowu315
【博客大纲地址】:https://blog.csdn.net/sunyaowu315/article/details/82905347


如何用python常用库的一些基本方法,来制作漂亮的分类汇总统计表,高效快捷的满足工作需要。
(框架已有,结果很赞,工作紧张,美中不足,空余时间,持续更新)

简单用法

groupby
pandas提供了一个灵活的groupby功能,它能够以一种自然的方式对数据集进行切片、切块、摘要等操作。对数据集进行分组并对各组应用一个函数(无论是聚合还是转换),这是数据分析工作中的重要环节。在将数据集准备好之后,通常的任务就是计算分组统计或生成透视表。
详细用法,参考【GroupBy:数据聚合与分组运算】:https://blog.csdn.net/sunyaowu315/article/details/82774552

开胃小菜

pivot_table
大多数小伙伴都有在Excel中使用数据透视表的经历,其实Pandas也提供了一个类似的功能,名为pivot_table,使用起来及其方便,掌握好它的col和index及运算方法,可以让你的报表制作非常高效。

例:极简新贷运营指标-风控审批表:

def ds_approve(self,indata):
    tmp = indata.copy()
    index = self.index
    df_pivot = pd.pivot_table(tmp,index=index,values='apply_id',aggfunc='count').rename(columns = {'apply_id':'注册量'})
    df_pivot['处理量'] = tmp.groupby(index)['apply_id'].agg(pd.Series.count)
    df_pivot['规则处理'] = tmp[tmp['status'].notnull()].groupby(index)['apply_id'].agg(pd.Series.count)
    df_pivot['规则拒绝']= tmp[tmp['status'] == -1].groupby(index)['apply_id'].agg(pd.Series.count)
    df_pivot['规则通过']= tmp[(tmp['status'] >2) | (tmp['status'] == -3)].groupby(index)['apply_id'].agg(pd.Series.count)
    df_pivot['人工通过']= tmp[tmp['status']  == 6 ].groupby(index)['apply_id'].agg(pd.Series.count)
    df_pivot.loc['总计'] = df_pivot.apply(lambda x : x.sum())
    df_pivot['规则核准%'] = df_pivot[['规则通过','规则处理']].apply(lambda x: float('{x:.2f}'.format(x = (x['规则通过'] / x['规则处理'])*100)  if x['规则处理'] > 0 else '0.00'),axis = 1 )
    df_pivot['人工核准%'] = df_pivot[['规则通过','人工通过']].apply(lambda x: float('{x:.2f}'.format(x = (x['人工通过'] / x['规则通过'])*100)  if x['规则通过'] > 0 else '0.00'),axis = 1 )
    df_pivot['核拨%'] = df_pivot[['人工通过','规则处理']].apply(lambda x: float('{x:.2f}'.format(x = (x['人工通过'] / x['规则处理'])*100)  if x['规则处理'] > 0 else '0.00'),axis = 1 )
    #df_pivot = df_pivot.sort_values(by=[box],ascending=[0]).reset_index(drop=True)     
    return df_pivot

结果展示
在这里插入图片描述

战术升级

prettytablecolorama

再次升级

pygal

猜你喜欢

转载自blog.csdn.net/sunyaowu315/article/details/88100911