【Python】透视表、统计表、汇总表、报表
【博客地址】:https://blog.csdn.net/sunyaowu315
【博客大綱地址】:https://blog.csdn.net/sunyaowu315/article/details/82905347
如何用python常用庫的一些基本方法,來制作漂亮的分類匯總統(tǒng)計表,高效快捷的滿足工作需要。
(框架已有,結(jié)果很贊,工作緊張,美中不足,空余時間,持續(xù)更新)
簡單用法
groupby
pandas提供了一個靈活的groupby功能,它能夠以一種自然的方式對數(shù)據(jù)集進行切片、切塊、摘要等操作。對數(shù)據(jù)集進行分組并對各組應用一個函數(shù)(無論是聚合還是轉(zhuǎn)換),這是數(shù)據(jù)分析工作中的重要環(huán)節(jié)。在將數(shù)據(jù)集準備好之后,通常的任務就是計算分組統(tǒng)計或生成透視表。
詳細用法,參考【GroupBy:數(shù)據(jù)聚合與分組運算】:https://blog.csdn.net/sunyaowu315/article/details/82774552
開胃小菜
pivot_table
大多數(shù)小伙伴都有在Excel中使用數(shù)據(jù)透視表的經(jīng)歷,其實Pandas也提供了一個類似的功能,名為pivot_table,使用起來及其方便,掌握好它的col和index及運算方法,可以讓你的報表制作非常高效。
例:極簡新貸運營指標-風控審批表:
def ds_approve(self,indata):tmp = indata.copy()index = self.indexdf_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['規(guī)則處理'] = tmp[tmp['status'].notnull()].groupby(index)['apply_id'].agg(pd.Series.count)df_pivot['規(guī)則拒絕']= tmp[tmp['status'] == -1].groupby(index)['apply_id'].agg(pd.Series.count)df_pivot['規(guī)則通過']= 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['規(guī)則核準%'] = df_pivot[['規(guī)則通過','規(guī)則處理']].apply(lambda x: float('{x:.2f}'.format(x = (x['規(guī)則通過'] / x['規(guī)則處理'])*100) if x['規(guī)則處理'] > 0 else '0.00'),axis = 1 )df_pivot['人工核準%'] = df_pivot[['規(guī)則通過','人工通過']].apply(lambda x: float('{x:.2f}'.format(x = (x['人工通過'] / x['規(guī)則通過'])*100) if x['規(guī)則通過'] > 0 else '0.00'),axis = 1 )df_pivot['核撥%'] = df_pivot[['人工通過','規(guī)則處理']].apply(lambda x: float('{x:.2f}'.format(x = (x['人工通過'] / x['規(guī)則處理'])*100) if x['規(guī)則處理'] > 0 else '0.00'),axis = 1 )#df_pivot = df_pivot.sort_values(by=[box],ascending=[0]).reset_index(drop=True) return df_pivot結(jié)果展示
戰(zhàn)術升級
prettytable和colorama
再次升級
pygal
總結(jié)
以上是生活随笔為你收集整理的【Python】透视表、统计表、汇总表、报表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Python】Python常用的Ser
- 下一篇: 【Mongodb】MongoDB