Pandas统计分析-分组->透视->可视化

2020-07-07 20:24:53 浏览数 (1)

数据 分组 聚合 运算

聚合

飞行综合

代码语言:javascript复制
flights = pd.read_csv('data/flights.csv')
1 显示部分数据
2 按照AIRLINE分组, 使用agg方法, 传入要聚合的列和聚合函数
  flights.groupby('AIRLINE').agg({'ARR_DELAY':'mean'}).head()
3 或者要选取的列使用索引, 聚合函数作为字符串传入agg
flights.groupby('AIRLINE')['ARR_DELAY'].agg('mean').head()
4 每家航空公司每周平均每天取消的航班数
flights.groupby(['AIRLINE', 'WEEKDAY'])['CANCELLED'].agg('sum').head(10)
5 分组可以是多组, 选取可以是多组, 聚合函数也可以是多个
 每周每家航空公司取消或改变航线的航班总数和比例
group1 = flights.groupby(['AIRLINE', 'WEEKDAY'])['CANCELLED', 'DIVERTED']
group1.agg(['sum', 'mean']).head(7)
6 # 用列表和嵌套字典对多列分组和聚合
# 对于每条航线, 找到总航班数, 取消的数量和比例,飞行时间的平均时间和方差
group_cols = ['ORG_AIR', 'DEST_AIR']
agg_dict = { 'CANCELLED':['sum', 'mean', 'size'],
             'AIR_TIME':['mean', 'var']}
flights.groupby(group_cols).agg(agg_dict).head()
7 # 按'AIRLINE', 'WEEKDAY'分组, 分别对DIST和ARR_DELAY聚合
airline_info = flights.groupby(['AIRLINE', 'WEEKDAY'])
airline_info = airline_info.agg({ 'DIST':['sum', 'mean'],
                   'ARR_DELAY':['min', 'max'] }).astype(int)
airline_info.head()

分组

大学数据集

删除这三列缺失值

数据透视表

数据透视表

交叉表

综合练习

读取显示前8

表中数据做索引,后面列都是数值

Pandas可视化

线性表

四列累加和的直方图

柱状图

bar条状

barth水平堆叠

直方图 密度图

频度出现次数 alpha是透明度

堆叠 bins堆个个数

散点图

scatter散点图

s 控制大小

其他图

0 人点赞