数据探索:数据透视表pivot_table

import pandas as pd

# 读取数据
data = pd.read_excel('../data/pivot_table_demo.xlsx')

print(data.describe())  # 仅展示的是数字字段的
print(data.describe(include='all').T)  # 展示所有数据

透视表-pivot_table

1-求各学习中心已缴纳学费的总和

rst1 = data.pivot_table(index=['学习中心'], values=['已缴纳学费'], aggfunc=np.sum)
print(rst1.head())

 输出结果:

学习中心        已缴纳学费          
上海管理中心     215430
北京学习中心     45500
北京通州服务站   22700
南京管理中心     5760
嘉兴学习中心     23020

2-求各学习中心已缴纳学费的均值

rst2 = data.pivot_table(index=['学习中心'], values=['已缴纳学费'], aggfunc=np.mean)
print(rst2.head())

输出结果:

 学习中心       已缴纳学费       
上海管理中心   3779.473684
北京学习中心   2394.736842
北京通州服务站  4540.000000
南京管理中心   2880.000000
嘉兴学习中心   2557.777778

3-各学习中心的报名人数

rst3 = data.pivot_table(index=['学习中心'], values=['身份证号码'], aggfunc=np.count_nonzero)
print(rst3.head())

输出结果:(身份证号的个数当人数)

学习中心          身份证号码  
上海管理中心      57
北京学习中心      19
北京通州服务站    5
南京管理中心      2
嘉兴学习中心      9

4-各学习中心的已缴纳学费得总和、报名的人数总和

rst4 = data.pivot_table(index=['学习中心'], values=['已缴纳学费', '身份证号码'], aggfunc={'已缴纳学费': np.sum, '身份证号码': np.count_nonzero})
print(rst4)

输出结果:

学习中心      已缴纳学费  身份证号码            
上海管理中心   215430     57
北京学习中心    45500     19
北京通州服务站   22700      5
南京管理中心     5760      2
嘉兴学习中心    23020      9
大连学习中心   133100     44
天通苑学习中心   73500     23
扬州学习中心    54820     21
无锡管理中心    12650      6
湖州学习中心     2250      1
衢州学习中心     5240      3
郑州学习中心     7680      3
镇江学习中心    17600      7

 

你可能感兴趣的:(Python)