航班延誤與飛行距離的關係
本文以Package 『nycflights13』為基礎嘗試分析2013年紐約機場航班延誤與飛行距離的關係。所用到的知識點:
- dplyt包
- ggplot2包
- nycflights13包
一、安裝並載入包:
#安裝包ninstall.packages("dplyr")ninstall.packages("ggplot2")ninstall.packages("nycflights13")n#載入包nlibrary(dplyr)nlibrary(nycflights13)n
二、了解nycflights13:
查看nycflights文檔,其中有幾個topics:airlines、airports、flights、planes、weather,一一列印查看下:
airlines #一共有16家航空公司n
airports #因為包含1400多行,所以在console里看不全,於是就直接導出csv文件了nwrite.csv(airports,file="C:/Users/Administrator.PC-20150613LPHI/Desktop/大數據社群資料/airports.csv")n
flights #同上,依然是導出csv文件,這些欄位的基本含義搞清楚是前提nwrite.csv(flights,file="C:/Users/Administrator.PC-20150613LPHI/Desktop/大數據社群資料/flights.csv")n
planes #飛機的基本信息nwrite.csv(planes,file="C:/Users/Administrator.PC-20150613LPHI/Desktop/大數據社群資料/planes.csv")n
weather #由表可知,是按照EWR、LGA、JFK三個氣象觀測站對每個時段進行監測的數據nwrite.csv(weather,file="C:/Users/Administrator.PC-20150613LPHI/Desktop/大數據社群資料/weather.csv")n
三、選取有用數據,這裡用到select函數:
myflights <-select(flights,year,month,day,dep_time,arr_time,,dep_delay,arr_delay,,dest,air_time,distance)n#重命名dest使之看上去更易懂nmyflights<-rename(myflights,destination=dest)nmyflights #列印n
#用filter查找函數將起飛延時和到達延時的缺失值刪除nmyflights<-filter(myflights,n !is.na(dep_delay),n !is.na(arr_delay))nmyflights #列印查看結果缺失值已去除n
#可以用filter查找任何想要的數據n#示例一:查找11月15起飛的航班nfilter(myflights,month==11,day==15)n#示例二:查找起飛和到達同時延誤時間大於100分鐘的航班nfilter(myflights,dep_delay>100|arr_delay>100)n
四、將航班信息按目的地進行分組處理:
by_dest<-group_by(myflights,destination) #分成104個目的地nby_destn
delay<-summarise(by_dest,n count=n(),#航班數量n airt=mean(air_time,na.rm=TRUE),#平均空中時間n dist=mean(distance,na.rm=TRUE),#平均距離n delay=mean(arr_delay,na.rm=TRUE)#平均到達延時n )n#去掉航班數比較少的影響,留下數量多的進行統計ndelay<-filter(delay,count>20)ndelayn
五、用ggplot2進行圖形展示:
install.packages("ggplot2") #安裝ggplot2包nlibrary(ggplot2) #載入nggplot(data=delay)+geom_point(mapping = aes(x=dist,y=delay))n#加入平滑曲線nggplot(data=delay)+geom_point(mapping=aes(x=dist,y=delay))+geom_smooth(mapping=aes(x=dist,y=delay))n
六、思考:
感覺到這裡還沒有完,航班延誤和天氣變化之間有什麼關係?怎麼把flights和weather聯合起來分析按照time_hour分析?還需要繼續思考。
七、福利(電子書):
1、dplyr官方包
2、ggplot2官方包
3、ggplot2作者Hadley Wickham寫的的:ggplot2: Elegant Graphics for Data Analysis
4、R Graphics Cookbook
下載地址:鏈接:https://pan.baidu.com/s/1slFK9TN 密碼:vsqh
推薦閱讀:
※數據同步神器,「同步寶」新版上線
※李星:政府大數據服務,跑馬圈地正當時
※帝都交通安全指南
※在大數據時代,每家公司都要有大數據部門嗎?
※手把手|教你打造一個曲風分類機器人