当前位置:   article > 正文

数据科学入门与实战:玩转pandas实战项目分析航班晚点情况_pandas 分析迟到时长分布

pandas 分析迟到时长分布

引入相关包

import numpy as np
import pandas as pd
from pandas import DataFrame,Series
  • 1
  • 2
  • 3

读取数据文件

df = pd.read_csv('usa_flights.csv')
  • 1

看看数据个数

print(df.size)#计算总数
print(df.shape)#计算矩阵行列大小
  • 1
  • 2

在这里插入图片描述
查看数据

print(df.head())#一个月的数据..
#主要看看arr_delay才知道是否延误
  • 1
  • 2

数据情况,包含航班日期,航空公司,航班号,数据源,目的地,到达延迟时间,取消,距离,carrier_delay weather_delay late_aircraft_delay nas_delay security_delay actual_elapsed_time
在这里插入图片描述
按照到达目的延迟时间从小到大排序,-74说明早到达74分钟

#排序。。
#按照航班延误时间从小到大排序
print(df.sort_values('arr_delay'))
  • 1
  • 2
  • 3

在这里插入图片描述
最长延误时间TOP十

#最长延误时间Top Ten
print(df.sort_values('arr_delay',ascending=False)[:10])
  • 1
  • 2

在这里插入图片描述
计算延误航班和没有延误航班的比例

#计算延误和没有延误航班的比例
print(df['cancelled'])
  • 1
  • 2

在这里插入图片描述
就算延误和没有延误航班的个数分别为

print(df['cancelled'].value_counts())
  • 1

在这里插入图片描述
生成一列新的数据delay,通过applay吧arr_delay转否delay的标志

df['delayed'] = df['arr_delay'].apply(lambda x:x > 0)
  • 1
print(df.head())
  • 1

在这里插入图片描述
计算一下delayed False和True的值的数量

delay_data = df['delayed'].value_counts()#引用delay_data时候就直接delay_data[0]...即可
  • 1
print(delay_data)
print(type(delay_data))
  • 1
  • 2

在这里插入图片描述

计算延误比例

#延误比率
print(delay_data[1] / (delay_data[0] + delay_data[1]) )
  • 1
  • 2

在这里插入图片描述
每个公司的延误情况如何?通过groupby分组

#每个公司延误的情况,两级索引:'unique_carrier','delayed'
delay_group = df.groupby(['unique_carrier','delayed'])
print(delay_group)
print(delay_group.size())
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
在这里插入图片描述

不要堆叠

df_delay = delay_group.size().unstack()#不要堆叠
print(df_delay)
  • 1
  • 2

在这里插入图片描述
画图

import matplotlib.pyplot as plt
df_delay.plot()
  • 1
  • 2

在这里插入图片描述

df_delay.plot(kind = 'barh',stacked = True, figsize = [16,6],colormap = 'winter')
  • 1

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/156182
推荐阅读
相关标签
  

闽ICP备14008679号