Part One


Task 1


Dataset 1: tornado.csv

Read csv file

csvData <- read.csv(file = "http://latul.be/mbaa_531/data/tornado.csv", header = TRUE)

Show the first SIX rows of tornado.csv file

head (csvData)
##     yr mo dy       date     time tz st stf stn    f
## 1 2007  1  4 2007-01-04 15:45:00  3 LA  22   1 EF-1
## 2 2007  1  4 2007-01-04 16:35:00  3 LA  22   2 EF-1
## 3 2007  1  5 2007-01-05 00:27:00  3 MS  28   1 EF-1
## 4 2007  1  5 2007-01-05 00:40:00  3 MS  28   2 EF-0
## 5 2007  1  5 2007-01-05 00:57:00  3 MS  28   3 EF-1
## 6 2007  1  5 2007-01-05 01:07:00  3 MS  28   4 EF-1

Data manipulation

  1. Calculate the times of tornadoes occurred in Washington or Mississippi.
sum (csvData$st == "WA" | csvData$st == "MS")
## [1] 530
  1. Calculate the times of tornadoes occurred in Washington after 2012.
sum (csvData$st == "WA" & csvData$yr > 2012)
## [1] 7
  1. Display data of tornadoes occurred in Washington in 2012, 2013, and 2014.
index <- csvData$st == "WA" & csvData$yr %in% 2012:2014
csvData[ index, ]
##        yr mo dy       date     time tz st stf stn    f
## 8217 2013  3 21 2013-03-21 18:00:00  3 WA  53   0 EF-0
## 8851 2013  9 30 2013-09-30 08:20:00  3 WA  53   0 EF-1
## 9150 2014  4 27 2014-04-27 18:30:00  3 WA  53   0 EF-0
## 9747 2014  8 13 2014-08-13 19:30:00  3 WA  53   0 EF-0
## 9884 2014 10 23 2014-10-23 14:40:00  3 WA  53   0 EF-1
  1. Return data of tornadoes in Hawaii by month, year, F-scale.
index<- csvData$st == "HI" 
csvData[ index, c(2, 1, 10)]  
##       mo   yr    f
## 2766   9 2008 EF-0
## 2842  12 2008 EF-0
## 2878   2 2009 EF-0
## 5371   2 2011 EF-0
## 7359   3 2012 EF-0
## 10093  4 2015 EF-0
  1. List the tornadoes by date and time.
orderdate <- order( csvData$date)
tail(csvData[orderdate,])
##         yr mo dy       date     time tz st stf stn    f
## 11136 2015 12 28 2015-12-28 02:53:00  3 LA  22   0 EF-1
## 11137 2015 12 28 2015-12-28 03:20:00  3 LA  22   0 EF-1
## 11138 2015 12 28 2015-12-28 04:46:00  3 AR   5   0 EF-2
## 11139 2015 12 28 2015-12-28 05:43:00  3 MS  28   0 EF-1
## 11140 2015 12 28 2015-12-28 08:30:00  3 FL  12   0 EF-1
## 11141 2015 12 28 2015-12-28 15:58:00  3 NC  37   0 EF-0

According to the data, the latest tornado occured in NC (North Carolina).

  1. Calculate the numbers of tornadoes by months.
table(csvData$mo)
## 
##    1    2    3    4    5    6    7    8    9   10   11   12 
##  355  463  751 2171 2500 1899  861  517  401  525  350  348

Part Two


Task 2


Dataset 2: airline.csv

Read csv file

airlineData <- read.csv(file = "http://latul.be/mbaa_531/data/airline.csv", header = TRUE)

Show the first SIX rows of airline.csv file

head (airlineData)
##   Year Month DayofMonth DayOfWeek DepTime CRSDepTime ArrTime CRSArrTime
## 1 2004     3         25         4    1118       1125    1231       1236
## 2 2004     3         25         4     810        815    1016       1033
## 3 2004     3         25         4    1529       1530    2101       2104
## 4 2004     3         25         4    1119       1125    1423       1441
## 5 2004     3         25         4    1156       1155    1452       1444
## 6 2004     3         25         4     903        905    1047       1054
##   UniqueCarrier FlightNum TailNum ActualElapsedTime CRSElapsedTime AirTime
## 1            UA       425  N840UA                73             71      54
## 2            UA       425  N840UA               246            258     211
## 3            UA       426  N335UA               212            214     191
## 4            UA       426  N335UA               124            136     111
## 5            UA       427  N567UA               236            229     199
## 6            UA       427  N567UA               164            169     143
##   ArrDelay DepDelay Origin Dest Distance TaxiIn TaxiOut Cancelled
## 1       -5       -7    DEN  ABQ      349      3      16         0
## 2      -17       -5    PHL  DEN     1557      5      30         0
## 3       -3       -1    DEN  EWR     1605      7      14         0
## 4      -18       -6    SAN  DEN      853      4       9         0
## 5        8        1    ORD  PHX     1440      7      30         0
## 6       -7       -2    TPA  ORD     1012      5      16         0
##   CancellationCode Diverted CarrierDelay WeatherDelay NASDelay SecurityDelay
## 1                         0            0            0        0             0
## 2                         0            0            0        0             0
## 3                         0            0            0        0             0
## 4                         0            0            0        0             0
## 5                         0            0            0        0             0
## 6                         0            0            0        0             0
##   LateAircraftDelay
## 1                 0
## 2                 0
## 3                 0
## 4                 0
## 5                 0
## 6                 0

Data manipulation

a.Subset

i.Select the variables that meet the conditions: Departed (DepTime) after 10pm and flew (Dest) to Nashville (’BNA’).

select1 <- subset(airlineData, airlineData$DepTime > 2200 & airlineData$Dest == "BNA", select = c(9, 10, 17))
head(select1)
##       UniqueCarrier FlightNum Origin
## 7021             OH      5421    CVG
## 17401            AA      2435    ORD
## 19478            DH      7332    ORD

There are 3 observers satisfy the conditions.

ii.Select the variables that meet the conditions: Departed (DepTime) after 10pm, but Originated (Origin) from Nashville ’BNA’ or landed (Dest) in Memphis ’MEM’.

select2 <- subset(airlineData, airlineData$DepTime > 2200 & c(airlineData$Origin == "BNA" | airlineData$Dest == "MEM"), select = c(9, 10,17))
head(select2)
##       UniqueCarrier FlightNum Origin
## 2392             WN      1447    BNA
## 8169             OO      6838    ORD
## 10405            DL       579    ATL
## 19352            DH      6270    CVG

There are 4 observers satisfy the conditions.

  1. Select the variables that meet the conditions: Delayed (ArrDelay) by more two hours.
select3 <- subset(airlineData, airlineData$ArrDelay > 120, select = c(9, 10, 17))
print(select3)
##       UniqueCarrier FlightNum Origin
## 27               UA       441    ORD
## 65               UA       471    BUF
## 66               UA       471    ORD
## 78               UA       481    ORD
## 86               UA       489    CMH
## 126              UA       518    ORD
## 149              UA       538    ORD
## 154              UA       542    ORD
## 155              UA       543    BOS
## 158              UA       544    SNA
## 165              UA       548    SLC
## 175              UA       558    RNO
## 265              UA       626    ORD
## 268              UA       628    ORD
## 269              UA       628    SMF
## 297              UA       661    ORD
## 298              UA       663    EWR
## 324              UA       685    ORD
## 327              UA       687    LGA
## 358              UA       712    ORD
## 377              UA       727    ATL
## 388              UA       735    ORD
## 403              UA       750    ORD
## 404              UA       750    STL
## 463              UA       802    MSP
## 464              UA       802    ORD
## 480              UA       828    MSP
## 490              UA       843    CMH
## 509              UA       866    SAT
## 574              UA       940    MSP
## 601              UA       973    PIT
## 642              UA      1023    ORD
## 678              UA      1069    ORD
## 693              UA      1080    SJC
## 699              UA      1085    GSO
## 700              UA      1085    ORD
## 859              UA      1202    MSP
## 870              UA      1211    ROC
## 876              UA      1216    OAK
## 900              UA      1234    ORD
## 909              UA      1241    FLL
## 939              UA      1265    MSP
## 949              UA      1273    SFO
## 960              UA      1283    DEN
## 974              UA      1292    STL
## 1768             US       270    PIT
## 2078             US      1194    ORD
## 3365             WN       289    LAS
## 3442             WN      1206    LAX
## 3968             WN      2311    OAK
## 4004             WN       531    OAK
## 4426             WN       289    RNO
## 4440             WN      2676    RNO
## 4444             WN      2162    RNO
## 4446             WN      2311    RNO
## 4784             WN      1206    SMF
## 5030             NW       625    MSP
## 5207             NW       844    MSP
## 5368             NW      1071    BWI
## 5858             NW      1785    DTW
## 5884             NW      1816    MDW
## 5980             NW      1923    DTW
## 7507             OO      6041    LAX
## 7896             OO      6406    EUG
## 7945             OO      6461    SLC
## 8161             OO      6816    FWA
## 8162             OO      6822    ORD
## 8167             OO      6836    MEM
## 8169             OO      6838    ORD
## 8174             OO      6847    ROA
## 8175             OO      6848    ORD
## 8179             OO      6861    LNK
## 8181             OO      6865    ORD
## 8326             XE      3308    CVG
## 8333             XE      2425    EWR
## 8628             XE      2243    ORD
## 8637             XE      3358    CLE
## 9215             XE      3371    CLE
## 9245             XE      2302    CLE
## 9381             TZ       202    MDW
## 9425             TZ       267    MDW
## 9495             TZ       505    PIE
## 9508             TZ       591    RSW
## 9511             TZ       598    MDW
## 9534             TZ       675    MDW
## 9631             UA        65    SFO
## 9708             UA       150    SFO
## 9761             UA       212    SFO
## 9768             UA       220    SNA
## 9861             UA       314    SAN
## 9887             UA       336    PDX
## 9923             UA       358    ORD
## 9973             UA       392    ORD
## 10538            DL       728    ATL
## 10817            DL      1055    DFW
## 11220            DL      1603    MSP
## 11344            DL      1726    SAN
## 11416            DL      1802    SLC
## 11760            DL      2228    ATL
## 11872            DL      2530    MCO
## 12189            EV      4332    PNS
## 12995            FL       853    MSP
## 13351            HP       726    LAS
## 13360            HP       315    LAS
## 13452            HP       202    ONT
## 14338            MQ      3912    FSD
## 14348            MQ      3922    LNK
## 14391            MQ      3965    PIA
## 14401            MQ      3982    ICT
## 14404            MQ      3987    ORD
## 14406            MQ      3989    ORD
## 14407            MQ      3990    MSP
## 14413            MQ      4001    ORD
## 14428            MQ      4018    ORD
## 14433            MQ      4023    ORD
## 14455            MQ      4049    ORD
## 14475            MQ      4072    ORD
## 14480            MQ      4077    ORD
## 14482            MQ      4079    ORD
## 14493            MQ      4090    ORD
## 14496            MQ      4093    ORD
## 14499            MQ      4099    ORD
## 14531            MQ      4135    MSN
## 14552            MQ      4161    ORD
## 14554            MQ      4163    ORD
## 14562            MQ      4171    ORD
## 14565            MQ      4174    OMA
## 14569            MQ      4178    RIC
## 14580            MQ      4194    GRR
## 14621            MQ      4240    DSM
## 14623            MQ      4242    MSN
## 14647            MQ      4267    ORD
## 14651            MQ      4271    ORD
## 14659            MQ      4280    FWA
## 14676            MQ      4299    ORD
## 14681            MQ      4306    CVG
## 14685            MQ      4311    ORD
## 14696            MQ      4323    OKC
## 14700            MQ      4327    ORD
## 14716            MQ      4346    CMH
## 14719            MQ      4349    ORD
## 14735            MQ      4369    ORD
## 14746            MQ      4379    ORD
## 14747            MQ      4380    CVG
## 14751            MQ      4384    SDF
## 14757            MQ      4392    HSV
## 14771            MQ      4409    DSM
## 14772            MQ      4422    ORD
## 15116            NW       140    MSP
## 15132            NW       180    LAX
## 15184            NW       243    DTW
## 15309            NW       405    MSP
## 15691            AA       345    LGA
## 15819            AA       485    ORD
## 15833            AA       503    DTW
## 15834            AA       503    ORD
## 15848            AA       516    TUS
## 15852            AA       520    DEN
## 15871            AA       538    ORD
## 15872            AA       538    RNO
## 15889            AA       557    RDU
## 15907            AA       576    LAX
## 15931            AA       600    ORD
## 15933            AA       602    ORD
## 15940            AA       608    ORD
## 15943            AA       611    ORD
## 15946            AA       614    SEA
## 15971            AA       650    PHX
## 16044            AA       734    STL
## 16070            AA       772    MSP
## 16071            AA       772    ORD
## 16080            AA       787    MIA
## 16091            AA       801    FLL
## 16095            AA       806    SAN
## 16101            AA       818    ORD
## 16102            AA       818    SJC
## 16122            AA       844    ORD
## 16125            AA       849    MIA
## 16135            AA       860    MSY
## 16136            AA       860    ORD
## 16143            AA       873    ORD
## 16157            AA       892    ORD
## 16220            AA      1035    MCO
## 16265            AA      1081    ORD
## 16298            AA      1114    CLE
## 16365            AA      1178    DFW
## 16396            AA      1207    PVD
## 16402            AA      1212    IAH
## 16427            AA      1235    ORD
## 16458            AA      1263    ORD
## 16524            AA      1328    AUS
## 16542            AA      1344    ORD
## 16597            AA      1405    ORD
## 16627            AA      1432    MSY
## 16679            AA      1484    MCI
## 16728            AA      1530    XNA
## 16745            AA      1546    IAH
## 16746            AA      1546    ORD
## 16800            AA      1603    ORD
## 16809            AA      1612    LAX
## 16827            AA      1631    BOS
## 16847            AA      1652    ORD
## 16857            AA      1665    ORD
## 16882            AA      1692    SAT
## 16913            AA      1721    ORD
## 16926            AA      1733    EWR
## 16927            AA      1733    ORD
## 16946            AA      1754    TUL
## 17008            AA      1814    STL
## 17024            AA      1828    ORD
## 17045            AA      1852    ORD
## 17057            AA      1864    PHX
## 17058            AA      1864    STL
## 17083            AA      1891    ORD
## 17127            AA      1935    BWI
## 17135            AA      1941    EWR
## 17186            AA      1988    IAH
## 17187            AA      1988    ORD
## 17274            AA      2088    SNA
## 17278            AA      2093    STL
## 17315            AA      2252    JAC
## 17338            AA      2318    HDN
## 17360            AA      2353    ORD
## 17362            AA      2357    ORD
## 17363            AA      2360    DFW
## 17366            AA      2364    DFW
## 17368            AA      2368    DFW
## 17861            AS       526    SEA
## 17941            AS       680    RNO
## 18376            CO       246    IAH
## 18395            CO      1187    EWR
## 18415            CO       391    IAH
## 18534            CO       346    IAH
## 18672            CO      1185    EWR
## 18769            CO      1194    ORD
## 18986            CO      1647    ORD
## 19289            DH      6206    CVG
## 19299            DH      6213    CVG
## 19306            DH      6218    CVG
## 19352            DH      6270    CVG
## 19359            DH      6276    CVG
## 19385            DH      7228    FAR
## 19394            DH      7239    BOS
## 19413            DH      7260    IAD
## 19474            DH      7328    GSP
## 19478            DH      7332    ORD
## 19482            DH      7337    GRR
## 19493            DH      7348    ORD
## 19528            DH      7383    BNA
## 19543            DH      7400    TUL
## 19558            DH      7416    SBN
## 19562            DH      7421    ORD
## 19567            DH      7426    ORD
## 19568            DH      7427    JAX
## 19603            DH      7462    ORD
## 19609            DH      7468    ORD
## 19616            DH      7475    CAE
## 19627            DH      7486    ORD
## 19628            DH      7487    CHS
## 19632            DH      7491    BHM
## 19639            DH      7498    CLE
## 19646            DH      7506    MBS
## 19653            DH      7514    ORD
## 19655            DH      7516    GRR
## 19672            DH      7535    ORD
## 19678            DH      7545    CAK
## 19680            DH      7547    ABE
## 19683            DH      7556    ORD
## 19691            DH      7575    SYR
## 19697            DH      7587    SAV
## 19716            DH      7614    ORD
## 19718            DH      7617    HPN
## 19729            DH      7629    PWM
## 19753            DH      7696    ORD
## 19774            DH      7728    ICT
## 19775            DH      7729    ORD
## 19791            DH      7748    OKC
## 19807            DH      7766    TUL
## 19820            DH      7781    HPN
## 19845            DH      7807    ORD

There are 280 observers satisfy the conditions.

  1. Select the variables that meet the conditions: Arrived (ArrDelay) more than two hours late, but didn’t leave late (DepDelay).
select4 <- subset(airlineData, airlineData$ArrDelay > 120 & airlineData$DepDelay <= 0, select = c(9, 10, 17))
head(select4)
##      UniqueCarrier FlightNum Origin
## 9495            TZ       505    PIE

There is only 1 observer satisfies the conditions.

b.Arrange

  1. Sort flights to find the 5 most delayed (DepDelay) flights.
order1 <- order(-airlineData$DepDelay)
airlineData <- airlineData[order1, ]
head(airlineData[order1,], 5)
##       Year Month DayofMonth DayOfWeek DepTime CRSDepTime ArrTime CRSArrTime
## 18145 2004     3         25         4    1511       1510    1814       1805
## 1304  2004     3         25         4     658        700     852        918
## 14197 2004     3         25         4     546        550     701        739
## 1851  2004     3         25         4    1755       1800    1850       1849
## 18682 2004     3         25         4    1858       1903    2029       2000
##       UniqueCarrier FlightNum TailNum ActualElapsedTime CRSElapsedTime AirTime
## 18145            B6       434  N564JB               183            175     152
## 1304             US       799  N724UW               114            138     101
## 14197            MQ      3640  N839MQ               135            169     121
## 1851             US       294  N779AU                55             49      38
## 18682            CO       740  N37252                91             57      50
##       ArrDelay DepDelay Origin Dest Distance TaxiIn TaxiOut Cancelled
## 18145        9        1    MCO  BOS     1121     15      16         0
## 1304       -26       -2    MHT  CLT      737      2      11         0
## 14197      -38       -4    GSP  DFW      862      5       9         0
## 1851         1       -5    BWI  PHL       90      4      13         0
## 18682       29       -5    AUS  IAH      140     11      30         0
##       CancellationCode Diverted CarrierDelay WeatherDelay NASDelay
## 18145                         0            0            0        0
## 1304                          0            0            0        0
## 14197                         0            0            0        0
## 1851                          0            0            0        0
## 18682                         0            0            0       29
##       SecurityDelay LateAircraftDelay
## 18145             0                 0
## 1304              0                 0
## 14197             0                 0
## 1851              0                 0
## 18682             0                 0

ii.Sort flights to find the 5 least delayed (DepDelay) flights

order2 <- order(airlineData$DepDelay)
airlineData <- airlineData[order2, ]
head(airlineData[order2,], 5)
##       Year Month DayofMonth DayOfWeek DepTime CRSDepTime ArrTime CRSArrTime
## 5884  2004     3         25         4     745       1345     954       1607
## 11220 2004     3         25         4    2031       1507    2319       1759
## 14475 2004     3         25         4    2005       1501    2230       1717
## 15132 2004     3         25         4    1807       1306    2336       1830
## 4444  2004     3         25         4    2147       1745    2252       1835
##       UniqueCarrier FlightNum TailNum ActualElapsedTime CRSElapsedTime AirTime
## 5884             NW      1816  N608NW                69             82      48
## 11220            DL      1603  N978DL               108            112      82
## 14475            MQ      4072  N514MQ               145            136      93
## 15132            NW       180  N352NW               209            204     188
## 4444             WN      2162    N341                65             50      48
##       ArrDelay DepDelay Origin Dest Distance TaxiIn TaxiOut Cancelled
## 5884      1067     1080    MDW  DTW      229     10      11         0
## 11220      320      324    MSP  CVG      596      7      19         0
## 14475      313      304    ORD  OKC      693      6      46         0
## 15132      306      301    LAX  MEM     1619      7      14         0
## 4444       257      242    RNO  OAK      180      2      15         0
##       CancellationCode Diverted CarrierDelay WeatherDelay NASDelay
## 5884                          0         1067            0        0
## 11220                         0            0            0        0
## 14475                         0          254            0        9
## 15132                         0          301            0        5
## 4444                          0           10            0       15
##       SecurityDelay LateAircraftDelay
## 5884              0                 0
## 11220             0               320
## 14475             0                50
## 15132             0                 0
## 4444              0               232

iii.Sort flights by destination (Dest) and break ties by descending arrival delay (ArrDelay).

order3 <- order(airlineData$Dest, -airlineData$ArrDelay)
airlineData <- airlineData[order3, ]
head(airlineData[order3, ])
##       Year Month DayofMonth DayOfWeek DepTime CRSDepTime ArrTime CRSArrTime
## 5597  2004     3         25         4     715        720     847        858
## 12622 2004     3         25         4    1212       1200    1344       1325
## 3861  2004     3         25         4    1045       1045    1150       1145
## 13095 2004     3         25         4    1534       1535    2256       2250
## 18959 2004     3         25         4     639        645     818        820
## 17064 2004     3         25         4    1141       1148    1441       1409
##       UniqueCarrier FlightNum TailNum ActualElapsedTime CRSElapsedTime AirTime
## 5597             NW      1457  N754NW                92             98      68
## 12622            EV      4910  N712EV               212            205     171
## 3861             WN       694    N362                65             60      49
## 13095            HA        30  N589HA               322            315     430
## 18959            CO      1087  N57857               159            155     133
## 17064            AA      1870  N290AA               180            141     140
##       ArrDelay DepDelay Origin Dest Distance TaxiIn TaxiOut Cancelled
## 5597       -11       -5    MSP  STL      449      6      18         0
## 12622       19       12    DFW  SNA     1205     15      26         0
## 3861         5        0    MSY  BHM      321      3      13         0
## 13095        6       -1    OGG  SEA     2640      4       8         0
## 18959       -2       -6    MCO  IAH      853     12      14         0
## 17064       32       -7    MSY  ORD      837     10      30         0
##       CancellationCode Diverted CarrierDelay WeatherDelay NASDelay
## 5597                          0            0            0        0
## 12622                         0           12            0        7
## 3861                          0            0            0        0
## 13095                         0            0            0        0
## 18959                         0            0            0        0
## 17064                         0            0            0       32
##       SecurityDelay LateAircraftDelay
## 5597              0                 0
## 12622             0                 0
## 3861              0                 0
## 13095             0                 0
## 18959             0                 0
## 17064             0                 0

Part Three

Bonus Task


Dataset : airline.csv

Read csv file

airlineBonus <- read.csv(file = "http://latul.be/mbaa_531/data/airline.csv", header = TRUE)

Show the first SIX rows of airline.csv file

head (airlineBonus)
##   Year Month DayofMonth DayOfWeek DepTime CRSDepTime ArrTime CRSArrTime
## 1 2004     3         25         4    1118       1125    1231       1236
## 2 2004     3         25         4     810        815    1016       1033
## 3 2004     3         25         4    1529       1530    2101       2104
## 4 2004     3         25         4    1119       1125    1423       1441
## 5 2004     3         25         4    1156       1155    1452       1444
## 6 2004     3         25         4     903        905    1047       1054
##   UniqueCarrier FlightNum TailNum ActualElapsedTime CRSElapsedTime AirTime
## 1            UA       425  N840UA                73             71      54
## 2            UA       425  N840UA               246            258     211
## 3            UA       426  N335UA               212            214     191
## 4            UA       426  N335UA               124            136     111
## 5            UA       427  N567UA               236            229     199
## 6            UA       427  N567UA               164            169     143
##   ArrDelay DepDelay Origin Dest Distance TaxiIn TaxiOut Cancelled
## 1       -5       -7    DEN  ABQ      349      3      16         0
## 2      -17       -5    PHL  DEN     1557      5      30         0
## 3       -3       -1    DEN  EWR     1605      7      14         0
## 4      -18       -6    SAN  DEN      853      4       9         0
## 5        8        1    ORD  PHX     1440      7      30         0
## 6       -7       -2    TPA  ORD     1012      5      16         0
##   CancellationCode Diverted CarrierDelay WeatherDelay NASDelay SecurityDelay
## 1                         0            0            0        0             0
## 2                         0            0            0        0             0
## 3                         0            0            0        0             0
## 4                         0            0            0        0             0
## 5                         0            0            0        0             0
## 6                         0            0            0        0             0
##   LateAircraftDelay
## 1                 0
## 2                 0
## 3                 0
## 4                 0
## 5                 0
## 6                 0

Data manipulation

1.Transform using the Airline data: create a new data frame with only the columns ’DepDelay’, ’ArrDelay’, ’Origin’, ’Dest’, AirTime’, and ’Distance’. In addition keep only the observation for flights that were delayed (DepDelay) by more than 1 hour.

Bonus <- data.frame(airlineBonus[ airlineBonus$DepDelay > 60, c(16, 15, 17, 18, 14, 19)])
write.csv(Bonus, file = "Bonus.csv")
head(Bonus)
##    DepDelay ArrDelay Origin Dest AirTime Distance
## 8       112      102    DEN  SNA     116      846
## 23       65       78    ORD  ROC      72      528
## 44       73       72    IAH  ORD     139      925
## 65      164      144    BUF  ORD      79      473
## 66      130      138    ORD  MSP      57      334
## 78      122      144    ORD  SAN     238     1723
  1. Add a new column reporting departure delays minus the mean departure delay to the new data frame.

First calculate mean of DepDelay

result.mean <- mean(Bonus$DepDelay, na.rm = TRUE)
print(result.mean)
## [1] 105.9261

Then display the variable meets the conditions.

Bonus$DepDelayMean <- Bonus$DepDelay- mean(Bonus$DepDelay, na.rm = TRUE) 
options(digits = 2)
head(Bonus)
##    DepDelay ArrDelay Origin Dest AirTime Distance DepDelayMean
## 8       112      102    DEN  SNA     116      846          6.1
## 23       65       78    ORD  ROC      72      528        -40.9
## 44       73       72    IAH  ORD     139      925        -32.9
## 65      164      144    BUF  ORD      79      473         58.1
## 66      130      138    ORD  MSP      57      334         24.1
## 78      122      144    ORD  SAN     238     1723         16.1
  1. Convert the departure and arrival delays columns from minutes into hours.
Bonus$DepDelay <- Bonus$DepDelay / 60
Bonus$ArrDelay <- Bonus$ArrDelay / 60
options(digits = 2)
head(Bonus)
##    DepDelay ArrDelay Origin Dest AirTime Distance DepDelayMean
## 8       1.9      1.7    DEN  SNA     116      846          6.1
## 23      1.1      1.3    ORD  ROC      72      528        -40.9
## 44      1.2      1.2    IAH  ORD     139      925        -32.9
## 65      2.7      2.4    BUF  ORD      79      473         58.1
## 66      2.2      2.3    ORD  MSP      57      334         24.1
## 78      2.0      2.4    ORD  SAN     238     1723         16.1
  1. Add a column with the average flight speed (in mph).
Bonus$AirTime <- Bonus$AirTime / 60
Bonus$AveSpeed <- Bonus$Distance / Bonus$AirTime
head(Bonus)
##    DepDelay ArrDelay Origin Dest AirTime Distance DepDelayMean AveSpeed
## 8       1.9      1.7    DEN  SNA    1.93      846          6.1      438
## 23      1.1      1.3    ORD  ROC    1.20      528        -40.9      440
## 44      1.2      1.2    IAH  ORD    2.32      925        -32.9      399
## 65      2.7      2.4    BUF  ORD    1.32      473         58.1      359
## 66      2.2      2.3    ORD  MSP    0.95      334         24.1      352
## 78      2.0      2.4    ORD  SAN    3.97     1723         16.1      434
  1. Report your new table using the function summary().
summary(Bonus)
##     DepDelay      ArrDelay      Origin              Dest          
##  Min.   : 1    Min.   : 0    Length:968         Length:968        
##  1st Qu.: 1    1st Qu.: 1    Class :character   Class :character  
##  Median : 2    Median : 2    Mode  :character   Mode  :character  
##  Mean   : 2    Mean   : 2                                         
##  3rd Qu.: 2    3rd Qu.: 2                                         
##  Max.   :18    Max.   :18                                         
##  NA's   :183   NA's   :185                                        
##     AirTime       Distance     DepDelayMean    AveSpeed  
##  Min.   :-23   Min.   :  56   Min.   :-45   Min.   :-11  
##  1st Qu.:  1   1st Qu.: 316   1st Qu.:-32   1st Qu.:329  
##  Median :  2   Median : 590   Median :-11   Median :393  
##  Mean   :  2   Mean   : 678   Mean   :  0   Mean   :379  
##  3rd Qu.:  2   3rd Qu.: 867   3rd Qu.: 18   3rd Qu.:443  
##  Max.   :  6   Max.   :2704   Max.   :974   Max.   :543  
##  NA's   :185   NA's   :183    NA's   :183   NA's   :185

Codes based on R script