赞
踩
一.
1.项目介绍:该项目使用anaconda下jupyter对美国航班延误情况进行分析,数据来源http://www.transtats.bts.gov.
二.
1.首先导入所需要的库
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
2.设置属性
pd.set_option(‘display.max_rows’,15)
pd.set_option(‘display.max_columns’,15)
3.使用.shape、.cloumn等查看导入的数据大小,导入的数据有哪些列等。
4.可以看出unnamed:16显示的全是空值,因此我们可以清洗掉此列数据,
data.dropna(how=‘all’,inplace=True,axis=1)词条语句表示在原数据上删除为空值的列,此外还有data.drop_duplicates()(去除重复行)、data.fillna(‘abc’)(用某一值代替空值)等操作,处理结果如下:
5.对起飞超过十五分钟的航班进行分析,可以看到其中DEP_DEL15此列为对延迟是否超过十五分钟的统计,此列为1时为超过15分钟为0时不超过十五分钟,因为我们可以用整列的值除以列的长度来得出延迟的比例。
可以得出延迟的几率大概占27.9%,可见延机情况还不是很多。
6.到达延迟同理可得
到达延迟的几率大概为25.8%,和出发延迟几乎一样。
7.由表中ORIGIN_STATE_ABR可以利用此数据找出延误航班次数最频繁始发地,处理结果为:
可以得出结论TX,CA两地航班延误最频繁。
8.到达延迟d地点DEST_STATE_ABR同理可得,结果如下
可见最高的还是TX,CA两地。
9.把起飞延迟和到达延迟会总成一个DataFrame,以便后面的图形分析,
.T的作用是把数据以列的方式构建成dataframe,否则默认情况下会以行的形式形成,显然这不是我们需要的dataframe。
10.delay_DF.sort_values(‘DEP_DEL15’,ascending=False).plot(kind=‘bar’,title=‘delayed flights by state’)结果如下图:
11.每个地区航班延迟率,因为每个地区航班数量不一样,所以要看延迟比率最好。
12.到达地区延迟率
可以得出DE地区到达延迟率最高。
13.机场延迟趋势,利用groupby分组求和,
得出某地到某地的延迟情况表。
14.到达每个地方航班延迟比率
15.简化上图表格,利用unstack()把行转换为列,去掉第一行无用数据。
从这张表格可以查出两地之间的航班延误频率。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。