Husky数据分析——全球航班信息的研究

在莱特兄弟制造了第一架可控飞机100年后的今天,坐飞机已然成为了大众化的出行方式。可是我们大多数人对航空领域的相关情况了解得还并不多,例如历史上各国航空器制造公司的兴衰、全球各个机场的繁忙程度,和每家航空公司的准点率,还有每家公司的机龄分布和飞机利用率等等问题。为了揭开这一切,几个月前连续跟踪来自https://www.flightradar24.com的全球航空飞行记录。由于飞行记录实时更新,网页包含大量JavaScript代码,要经过渲染处理才能获得我们需要的全部数据。故而在分布式爬虫时不能用常规的方法获取网页内容,可以结合selenium和phantomjs来批量动态获取内容,再使用BeautifulSoup等来抓取有用信息。目前一共获取了400多万条全球飞行记录,寻思着恰好可以利用这些数据来分析一下上面的问题。

经过对原始数据进行清洗、计算、变换等多重预处理操作后得到如下数据格式,如下所示,代表的即是一条飞行记录的各个信息:

{u'age': 0,
  u'aircraft': u'Flight history for aircraft - 4R-ALP',
  u'aircraft_num': 8470,
  u'aircraft_type': u'Airbus A330-343',
  u'airline': u'SriLankan Airlines',
  u'airline_arrival_punctuality_rate': 0.9097986577181209,
  u'airline_departure_punctuality_rate': 0.5763758389261745,
  u'airline_num': 21,
  u'airline_record_num': 3725,
  u'airport_arrival_punctuality_rate': 0.7331968725881682,
  u'airport_arrival_record_num': 29801,
  u'airport_departure_punctuality_rate': 0.1418695324530651,
  u'airport_departure_record_num': 30521,
  u'arrival_late(mins)': -51,
  u'average_age': 7.635973154362416,
  u'date': u'21 Oct',
  u'departure_late(mins)': 8,
  u'f_from': u'Shanghai(PVG)',
  u'f_to': u'Colombo(CMB)',
  u'flight_duration': u'6:15',
  u'flight_name': u'UL867',
  u'punctuality_rate': 0.8709677419354839,
  u'real_departure': u'1:18 AM',
  u'sche_arrival': u'1:15 AM',
  u'sche_departure': u'1:10 AM',
  u'status': u'Landed 12:24 AM',
  u'type': u'flight'}

#直接看大图,以下图表柱形代表对应航空公司的飞机数量,曲线折点代表飞机利用率  
show(num_airline_bar)  

如上图所示,可见全球5大航空公司分别为American Airlines,Delta Air Lines,United Airlines,Southwest  Airlines 和 FedEx。其中美国航空和达美航空都拥有超过800架在飞飞机,而中国南方航空,中国东方航空和中国国际航空也都挤进前十的行列。从图中曲线,同时可以查询每家公司的飞机利用率的高低,这里就不分别讨论了。
#下图展示的是关于航空公司拥有全部飞机的平均机龄,按机龄从小到大排列:  
show(age_airline_bar)  
Husky数据分析——全球航班信息的研究_第1张图片

机龄排行靠前的航空公司,可以发现国内就有天津航空、厦门航空、海南航空、山东航空、四川航空和上海航空等几家公司的平均机龄都没有超过5年。而Ameriflight,DHL,和FedEx的平均机龄均超过20年,特别是Ameriflight的在飞飞机平均机龄已超过36年。总体来看,拥有较新飞机的更多是一些新兴的小型航空公司,而机龄较老的一般是国际上的货运航空公司。

#比较关心的准点率呢?先从机场开始,下图分别展示了前八十大飞机场所有降落和起飞的准点率,按延迟不大于30分钟为标准。  
show(punctuality_rate_airport_bar)  
Husky数据分析——全球航班信息的研究_第2张图片
从上图得知,Tokyo的HND机场无疑在协调飞机起降的工作上做的非常好,无论是起飞准点率还是降落准点率都排在了前列。而中国的几大机场则表现的不尽如人意,例如上海的PVG即浦东机场和上海的SHA即虹桥机场两大机场排到了末两位,两者都没有达到50%的起飞准点率,而北京首都机场也仅仅排到倒数第五的位置。看来国内的几大机场还有很大的进步空间。

#比较了机场的情况,接下来看看各大航空公司的情况。下面给出两张图,增加的另一张是按准点率的国际标准绘制的,即安延误不超过15分钟为准点标准。  
show(punctuality_rate_airline_bar)  

show(punctuality_rate_airline_15mins_bar)  

在两种标准的比较下,Japan Airlines,KLM Cityhopper,Qatar Airways,All  Nippon Airways,Turkish Airlines 和 Delta Air lines都有非常高的准点率,其中降落准点率基本都超过95%。与机场准点率一样,诸多中国航空公司都排到了后面。特别是按照国际标准小于15分钟计算的准点率的结果中,排在末位的Shanghai Airlines的降落准点率只达到60%左右。另外,比较两种标准,发现对起飞的准点率较大,对降落的影响相对较小。

不同航空器制造公司在飞的飞机数量,按机龄分布图如下:

Husky数据分析——全球航班信息的研究_第3张图片

有图可知由于历史原因,近年来还活跃的飞机制造领域只剩下美国的Boeing,欧洲的AirBus,加拿大的Bombardier,巴西的Embraer和法国的ATR这五家公司。 近20年来,Boeing和Airbus发展势头非常好,特别是近年航空市场逐渐被这两家公司实现瓜分,其出产的飞机数量大大领先于其他竞争对手。Airbus 曾一度领先Boeing,不过4年前有下滑趋势进而被Boeing反超。

全球20大机场

Husky数据分析——全球航班信息的研究_第4张图片

#我们还可以根据条件搜索出需要的信息,例如  
input_dic ={'f_from':'hongkong',  
            'f_to':'shanghai',  
            'airline_arrival_punctuality_rate':0.9,  
            'punctuality_rate_airline':0.9,  
            }  
output_list =['airline',  
              'airline_arrival_punctuality_rate'  
             ]  
  
get_results(input_dic,output_list,line)  
#输出  
[[u'airline: Air Hong Kong', 'airline_arrival_punctuality_rate: 96.9%'],  
 [u'airline: Cathay Dragon', 'airline_arrival_punctuality_rate: 92.4%'],  
 [u'airline: Cathay Pacific', 'airline_arrival_punctuality_rate: 95.3%']]  

由于篇幅限制,这里仅展示了最终的分析结果。具体的数据抓取,数据清理,数据逻辑运算及可视化过程暂未展示。欢迎讨论,共同进步。

你可能感兴趣的:(PyHusky,数据分析,Husky大数据分析)