Situación problema

Te acabas de incorporar a una empresa consultora en Inteligencia de Negocios, actualmente están brindando servicios de análisis para la industria de la aviación y les interesa tener a la aerolínea American Airlines como cliente ya que es una de las aerolíneas líderes en los aeropuertos de Nueva York, motivo por el cuál te han contratado. Te han pedido que identifiques cómo puede dicha aerolínea mejorar su posición competitiva !! Para identificar oportunidades de mejorar la posición competitiva de la aerolínea American Airlines, necesitas realizar algunos análisis, para determinar si hay variaciones en la posición de liderazgo de dicha aerolínea.

Modelo Entidad-Relación

Se te ha solicitado hacer un estudio sobre la situación actual de la aerolínea American Airlines ya que se necesita revisar sus destinos, horarios y aviones con los que cuenta para hacer propuestas de aumento o reducción de vuelos por destino y horarios, así como la cantidad de aviones.

Para lograrlo considera las funciones sugeridas en los siguientes pasos:

Consulta y explora el data frame planes y weather para que conozcas su contenido

library(nycflights13)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
#View(planes)
#View(weather)

Se necesita saber de cada vuelo, la aerolínea, el aeropuerto de origen y el aeropuerto destino

library(dplyr)
summary(flights)
##       year          month             day           dep_time    sched_dep_time
##  Min.   :2013   Min.   : 1.000   Min.   : 1.00   Min.   :   1   Min.   : 106  
##  1st Qu.:2013   1st Qu.: 4.000   1st Qu.: 8.00   1st Qu.: 907   1st Qu.: 906  
##  Median :2013   Median : 7.000   Median :16.00   Median :1401   Median :1359  
##  Mean   :2013   Mean   : 6.549   Mean   :15.71   Mean   :1349   Mean   :1344  
##  3rd Qu.:2013   3rd Qu.:10.000   3rd Qu.:23.00   3rd Qu.:1744   3rd Qu.:1729  
##  Max.   :2013   Max.   :12.000   Max.   :31.00   Max.   :2400   Max.   :2359  
##                                                  NA's   :8255                 
##    dep_delay          arr_time    sched_arr_time   arr_delay       
##  Min.   : -43.00   Min.   :   1   Min.   :   1   Min.   : -86.000  
##  1st Qu.:  -5.00   1st Qu.:1104   1st Qu.:1124   1st Qu.: -17.000  
##  Median :  -2.00   Median :1535   Median :1556   Median :  -5.000  
##  Mean   :  12.64   Mean   :1502   Mean   :1536   Mean   :   6.895  
##  3rd Qu.:  11.00   3rd Qu.:1940   3rd Qu.:1945   3rd Qu.:  14.000  
##  Max.   :1301.00   Max.   :2400   Max.   :2359   Max.   :1272.000  
##  NA's   :8255      NA's   :8713                  NA's   :9430      
##    carrier              flight       tailnum             origin         
##  Length:336776      Min.   :   1   Length:336776      Length:336776     
##  Class :character   1st Qu.: 553   Class :character   Class :character  
##  Mode  :character   Median :1496   Mode  :character   Mode  :character  
##                     Mean   :1972                                        
##                     3rd Qu.:3465                                        
##                     Max.   :8500                                        
##                                                                         
##      dest              air_time        distance         hour      
##  Length:336776      Min.   : 20.0   Min.   :  17   Min.   : 1.00  
##  Class :character   1st Qu.: 82.0   1st Qu.: 502   1st Qu.: 9.00  
##  Mode  :character   Median :129.0   Median : 872   Median :13.00  
##                     Mean   :150.7   Mean   :1040   Mean   :13.18  
##                     3rd Qu.:192.0   3rd Qu.:1389   3rd Qu.:17.00  
##                     Max.   :695.0   Max.   :4983   Max.   :23.00  
##                     NA's   :9430                                  
##      minute        time_hour                     
##  Min.   : 0.00   Min.   :2013-01-01 05:00:00.00  
##  1st Qu.: 8.00   1st Qu.:2013-04-04 13:00:00.00  
##  Median :29.00   Median :2013-07-03 10:00:00.00  
##  Mean   :26.23   Mean   :2013-07-03 05:22:54.64  
##  3rd Qu.:44.00   3rd Qu.:2013-10-01 07:00:00.00  
##  Max.   :59.00   Max.   :2013-12-31 23:00:00.00  
## 
vuelos=select(flights,flight,carrier,origin,dest)
head(vuelos)
## # A tibble: 6 × 4
##   flight carrier origin dest 
##    <int> <chr>   <chr>  <chr>
## 1   1545 UA      EWR    IAH  
## 2   1714 UA      LGA    IAH  
## 3   1141 AA      JFK    MIA  
## 4    725 B6      JFK    BQN  
## 5    461 DL      LGA    ATL  
## 6   1696 UA      EWR    ORD

En la consulta anterior se necesita conocer el nombre de la aerolínea

#left_join()

Se necesita saber la cantidad de vuelos por cada destino para identificar cuáles son los destinos más buscados

count(vuelos, dest, sort=TRUE)
## # A tibble: 105 × 2
##    dest      n
##    <chr> <int>
##  1 ORD   17283
##  2 ATL   17215
##  3 LAX   16174
##  4 BOS   15508
##  5 MCO   14082
##  6 CLT   14064
##  7 SFO   13331
##  8 FLL   12055
##  9 MIA   11728
## 10 DCA    9705
## # … with 95 more rows

Agregar el nombre de la aerolínea al data frame anterior

#left_join()

Se necesita conocer las aerolíneas (clave y nombre) y destinos que vuelan por la Mañana: de 6 a 12, Tarde: de 12 a 19 , Noche: de 19 a 24 y Madrugada de 24 a 6, Agrega un nuevo campo a la tabla con el nombre de clas_horario y agrega, mañana, tarde, noche y madrugada según sea el caso.

#horarios=select(flights,flight,carrier,dest,hour)
#head(horarios)
#horarios$categoria = if(flights$hour>=6 & flights$hour<12, "Mañana")
#head(horarios)

Se necesita saber la cantidad de vuelos por aerolínea y destino que hay por la Mañana, Tarde, Noche y Madrugada

Se necesita saber a qué destinos vuela la aerolínea American Airlines Inc.-AA durante la madrugada

¿Qué aviones utiliza la aerolínea AA? aerolínea, tipo, motor y número de asientos y ¿Cuántos vuelos se han realizado con cada uno? elimina los NA’s

head(planes)
## # A tibble: 6 × 9
##   tailnum  year type                    manuf…¹ model engines seats speed engine
##   <chr>   <int> <chr>                   <chr>   <chr>   <int> <int> <int> <chr> 
## 1 N10156   2004 Fixed wing multi engine EMBRAER EMB-…       2    55    NA Turbo…
## 2 N102UW   1998 Fixed wing multi engine AIRBUS… A320…       2   182    NA Turbo…
## 3 N103US   1999 Fixed wing multi engine AIRBUS… A320…       2   182    NA Turbo…
## 4 N104UW   1999 Fixed wing multi engine AIRBUS… A320…       2   182    NA Turbo…
## 5 N10575   2002 Fixed wing multi engine EMBRAER EMB-…       2    55    NA Turbo…
## 6 N105UW   1999 Fixed wing multi engine AIRBUS… A320…       2   182    NA Turbo…
## # … with abbreviated variable name ¹​manufacturer
aviones=select(planes,type,engine,seats)
tail(aviones)
## # A tibble: 6 × 3
##   type                    engine    seats
##   <chr>                   <chr>     <int>
## 1 Fixed wing multi engine Turbo-fan   142
## 2 Fixed wing multi engine Turbo-fan   100
## 3 Fixed wing multi engine Turbo-fan   142
## 4 Fixed wing multi engine Turbo-fan   100
## 5 Fixed wing multi engine Turbo-jet   142
## 6 Fixed wing multi engine Turbo-jet   142

Conclusiones Como pudimos ver, lo primero que se relizó fue una breve limpieza de la base de datos y una exploración de la misma, en ella pudimos encontrar algunas cosas muy interesanres que nos podrían servir como insights, por ejemplo, los destinos más buscados son ORD y ATL, entre muchas otras cosas. Todo esto nos brinda información que facilita la toma de decisiones, por ejemplo, ampliar la capacidad de vuelos para los destinos más buscados, ofrecer descuentos en temporadas donde las personas tienden a viajar más, etc.

Visualización de datos

En los avances anteriores se han realizado diferentes análisis y ahora nos solicitan hacer visualizaciones de la aerolínea American Airlines para los ejecutivos con las siguientes características. Dentro de las aerolíneas el retraso tanto en la hora de partida como en la hora de llegada a su destino van generando indicadores negativos.

Se solicita analizar para la aerolínea American Airlines si los vuelos que tienen retraso en la partida también tienen retraso en la hora de llegada Realiza una visualización con una gráfica Scatterplot.

Visualiza la tendencia de la temperatura durante los primeros 15 días del mes de Enero en los vuelos que parten del aeropuerto “Newark, EWR”, utilizar una gráfica de línea

head(weather)
## # A tibble: 6 × 15
##   origin  year month   day  hour  temp  dewp humid wind_dir wind_speed wind_gust
##   <chr>  <int> <int> <int> <int> <dbl> <dbl> <dbl>    <dbl>      <dbl>     <dbl>
## 1 EWR     2013     1     1     1  39.0  26.1  59.4      270      10.4         NA
## 2 EWR     2013     1     1     2  39.0  27.0  61.6      250       8.06        NA
## 3 EWR     2013     1     1     3  39.0  28.0  64.4      240      11.5         NA
## 4 EWR     2013     1     1     4  39.9  28.0  62.2      250      12.7         NA
## 5 EWR     2013     1     1     5  39.0  28.0  64.4      260      12.7         NA
## 6 EWR     2013     1     1     6  37.9  28.0  67.2      240      11.5         NA
## # … with 4 more variables: precip <dbl>, pressure <dbl>, visib <dbl>,
## #   time_hour <dttm>
g1 = filter(weather,origin=="EWR")
head(g1)
## # A tibble: 6 × 15
##   origin  year month   day  hour  temp  dewp humid wind_dir wind_speed wind_gust
##   <chr>  <int> <int> <int> <int> <dbl> <dbl> <dbl>    <dbl>      <dbl>     <dbl>
## 1 EWR     2013     1     1     1  39.0  26.1  59.4      270      10.4         NA
## 2 EWR     2013     1     1     2  39.0  27.0  61.6      250       8.06        NA
## 3 EWR     2013     1     1     3  39.0  28.0  64.4      240      11.5         NA
## 4 EWR     2013     1     1     4  39.9  28.0  62.2      250      12.7         NA
## 5 EWR     2013     1     1     5  39.0  28.0  64.4      260      12.7         NA
## 6 EWR     2013     1     1     6  37.9  28.0  67.2      240      11.5         NA
## # … with 4 more variables: precip <dbl>, pressure <dbl>, visib <dbl>,
## #   time_hour <dttm>
g2=filter(g1,day<=15)
summary(g2)
##     origin               year          month             day        
##  Length:4309        Min.   :2013   Min.   : 1.000   Min.   : 1.000  
##  Class :character   1st Qu.:2013   1st Qu.: 4.000   1st Qu.: 4.000  
##  Mode  :character   Median :2013   Median : 6.000   Median : 8.000  
##                     Mean   :2013   Mean   : 6.497   Mean   : 8.013  
##                     3rd Qu.:2013   3rd Qu.: 9.000   3rd Qu.:12.000  
##                     Max.   :2013   Max.   :12.000   Max.   :15.000  
##                                                                     
##       hour           temp            dewp           humid       
##  Min.   : 0.0   Min.   :15.98   Min.   : 1.94   Min.   : 13.95  
##  1st Qu.: 5.0   1st Qu.:39.92   1st Qu.:26.96   1st Qu.: 48.93  
##  Median :11.0   Median :55.94   Median :42.98   Median : 64.35  
##  Mean   :11.5   Mean   :55.73   Mean   :42.60   Mean   : 64.48  
##  3rd Qu.:17.0   3rd Qu.:71.06   3rd Qu.:59.00   3rd Qu.: 81.07  
##  Max.   :23.0   Max.   :96.98   Max.   :75.20   Max.   :100.00  
##                                                                 
##     wind_dir       wind_speed         wind_gust         precip        
##  Min.   :  0.0   Min.   :   0.000   Min.   :16.11   Min.   :0.000000  
##  1st Qu.:100.0   1st Qu.:   5.754   1st Qu.:19.56   1st Qu.:0.000000  
##  Median :220.0   Median :   9.206   Median :23.02   Median :0.000000  
##  Mean   :193.2   Mean   :   9.576   Mean   :23.66   Mean   :0.006182  
##  3rd Qu.:280.0   3rd Qu.:  12.659   3rd Qu.:26.47   3rd Qu.:0.000000  
##  Max.   :360.0   Max.   :1048.361   Max.   :47.18   Max.   :1.060000  
##  NA's   :116                        NA's   :3423                      
##     pressure          visib          time_hour                    
##  Min.   : 997.9   Min.   : 0.120   Min.   :2013-01-01 01:00:00.0  
##  1st Qu.:1013.0   1st Qu.:10.000   1st Qu.:2013-04-01 00:00:00.0  
##  Median :1017.3   Median :10.000   Median :2013-06-15 21:00:00.0  
##  Mean   :1017.8   Mean   : 9.157   Mean   :2013-06-23 22:13:44.5  
##  3rd Qu.:1022.7   3rd Qu.:10.000   3rd Qu.:2013-09-15 21:00:00.0  
##  Max.   :1038.1   Max.   :10.000   Max.   :2013-12-15 23:00:00.0  
##  NA's   :520
g3=filter(g2,month==1)
summary(g3)
##     origin               year          month        day              hour      
##  Length:358         Min.   :2013   Min.   :1   Min.   : 1.000   Min.   : 0.00  
##  Class :character   1st Qu.:2013   1st Qu.:1   1st Qu.: 4.000   1st Qu.: 6.00  
##  Mode  :character   Median :2013   Median :1   Median : 8.000   Median :11.50  
##                     Mean   :2013   Mean   :1   Mean   : 8.039   Mean   :11.53  
##                     3rd Qu.:2013   3rd Qu.:1   3rd Qu.:12.000   3rd Qu.:17.75  
##                     Max.   :2013   Max.   :1   Max.   :15.000   Max.   :23.00  
##                                                                                
##       temp            dewp           humid           wind_dir    
##  Min.   :24.08   Min.   : 8.96   Min.   : 32.86   Min.   :  0.0  
##  1st Qu.:33.98   1st Qu.:19.94   1st Qu.: 51.34   1st Qu.:140.0  
##  Median :39.02   Median :26.06   Median : 61.67   Median :240.0  
##  Mean   :39.58   Mean   :28.06   Mean   : 65.48   Mean   :208.2  
##  3rd Qu.:44.96   3rd Qu.:35.06   3rd Qu.: 78.68   3rd Qu.:290.0  
##  Max.   :57.92   Max.   :53.06   Max.   :100.00   Max.   :360.0  
##                                                   NA's   :5      
##    wind_speed       wind_gust         precip            pressure   
##  Min.   : 0.000   Min.   :16.11   Min.   :0.000000   Min.   :1011  
##  1st Qu.: 5.754   1st Qu.:19.56   1st Qu.:0.000000   1st Qu.:1018  
##  Median : 8.055   Median :21.86   Median :0.000000   Median :1022  
##  Mean   : 8.226   Mean   :22.53   Mean   :0.002039   Mean   :1023  
##  3rd Qu.:11.508   3rd Qu.:25.32   3rd Qu.:0.000000   3rd Qu.:1027  
##  Max.   :24.166   Max.   :31.07   Max.   :0.190000   Max.   :1034  
##                   NA's   :308                        NA's   :38    
##      visib          time_hour                     
##  Min.   : 0.120   Min.   :2013-01-01 01:00:00.00  
##  1st Qu.: 9.000   1st Qu.:2013-01-04 19:15:00.00  
##  Median :10.000   Median :2013-01-08 12:30:00.00  
##  Mean   : 8.515   Mean   :2013-01-08 12:28:09.39  
##  3rd Qu.:10.000   3rd Qu.:2013-01-12 05:45:00.00  
##  Max.   :10.000   Max.   :2013-01-15 23:00:00.00  
## 
#g4=summarize_if(is.numeric, ~mean(.,na.rm=TRUE))
plot(g3$day,g3$temp, type="p")

• Visualiza la temperatura más frecuente en los primeros 15 días del mes de Enero, utilizar un histrograma. • Utiliza Facets para observar cómo varía la temperatura en cada mes en él histograma del punto anterior . • Número de vuelos que salieron de Nueva York en 2013 por aerolínea (mostrar solamente las 10 aerolíneas con más vuelos), utilizar gráfica de barras. • Visualiza el punto anterior en una gráfica de pie. • Relaciona el data frame fligths con el data frame airports a través del campo destino ¿cómo lograr estas relación? • Crea un nuevo data frame con el punto anterior únicamente con los 5 carriers con más vuelos por destino. • Realiza una visualización del punto anterior de las siguientes tres formas.

Imagina que entregarás estos hallazgos a tu superior, elabora un reporte ejecutivo utilizando los resultados obtenidos.

Compromiso ético y ciudadano

• Describe el valor de la integridad. Desde mi punto de vista, la integridad es una de las cualidades más valiosas de todas las personas, esta repercute directamente en quiénes somos y cuáles son nuestros principios. Considero que el actuar de manera ética es una de las vías más eficientes para lograr el desarrollo de nuestras sociedades, por ello, creo que es necesario que cada uno de nosotros tome conciencia sobre las acciones de sus actos y la vital importancia de entender a cabalidad que la integridad debe estar presente cada minuto de nuestras vidas, pues una persona con integridad actúa con coherencia entre sus palabras y acciones, respetando los valores y principios morales, y manteniendo siempre altos estándares éticos.

• Agrega una reflexión personal de cómo puedes actuar con respeto y honestidad en los negocios y en el uso de datos cuando realices análisis de datos y estés en contacto con los datos de una empresa.

El mundo actual se encuentra en una era de datos, en la que la información es uno de los activos más valiosos de cualquier empresa. En este contexto, es fundamental actuar con respeto y honestidad al trabajar con los datos de una empresa. En primer lugar, es importante tener en cuenta que los datos son propiedad de la empresa y, por lo tanto, deben tratarse con cuidado y confidencialidad. Como señala Narayanan y Shmatikov (2010), “la privacidad de los datos es un derecho fundamental y esencial para la libertad y la democracia”. Por lo tanto, debemos respetar la privacidad de los datos y asegurarnos de que se utilicen de manera ética y legal.

Además, al realizar análisis de datos, es crucial actuar con honestidad y transparencia en la interpretación de los resultados. Como sostienen Donoho (2010) y Tukey (1977), es importante tener en cuenta las limitaciones de los datos y la posibilidad de que haya errores o sesgos en el análisis. Debemos ser honestos al informar sobre los resultados de nuestro análisis y no exagerar ni minimizar los hallazgos. Solo de esta manera podremos garantizar que la información obtenida de los datos sea útil y fiable.

En resumen, para actuar con respeto y honestidad en los negocios y en el uso de datos, es fundamental tratar los datos con confidencialidad y respeto a la privacidad, así como actuar con transparencia y honestidad en la interpretación de los resultados. Solo de esta manera podremos contribuir a una cultura de datos ética y responsable.

• Agrega al menos 3 bibliografías y cítalas en el punto anterior. http://codigoeticaeintegridad.com/

Donoho, D. (2010). An invitation to reproducible computational research. Biostatistics, 11(3), 385-388. doi: 10.1093/biostatistics/kxq028

hen, Y., Zhao, H., Sun, M., & Pan, Y. (2019). Trust, risk and economic returns in big data sharing: A study on the moderating role of firm size. Journal of Business Research, 97, 61-72. doi: 10.1016/j.jbusres.2018.12.046

Kshetri, N. (2014). Big data’s roles in meeting enterprise information management challenges: A case study. Journal of Business Research, 67(7), 1569-1578. doi: 10.1016/j.jbusres.2013.09.014

Conclusiones

Tras realizar diversos análisis de la situación actual de la aerolínea American Airlines, se han identificado diversas oportunidades de mejora para mejorar su posición competitiva. En primer lugar, se ha analizado la cantidad de vuelos por destino y horario para identificar los destinos más buscados y proponer una posible reducción o aumento de vuelos según la demanda. Asimismo, se ha identificado la cantidad de vuelos por aerolínea y destino para poder comparar con la competencia y tomar decisiones estratégicas en consecuencia. Además, se ha estudiado el tipo de aviones utilizados por la aerolínea y la cantidad de vuelos realizados con cada uno, lo que podría dar lugar a mejoras en términos de eficiencia y reducción de costos.

En cuanto a las visualizaciones de datos, se han realizado diversas gráficas que muestran la relación entre el retraso en la partida y la llegada, la tendencia de la temperatura durante los primeros días de enero en el aeropuerto de Newark, la temperatura más frecuente y la cantidad de vuelos por aerolínea en Nueva York durante 2013. Estas visualizaciones son útiles para identificar patrones y tomar decisiones estratégicas en consecuencia. Así mismo, se ha visto la importancia de preservar y cuidar nuestra integridad como agentes de cambio.

Todo este análisis tiene un gran potencial para ser usado en la toma de decisiones, pues nos aporta una gran cantidad de descrubrimientos que se pueden usar para corregir algunas áreas de oportunidad dentro de la empresa.

Bibliografía de referencia:

Wickham, H. and Grolemund, G. (2017) R for Data Science: Import, Tidy, Transform, Visualize, and Model Data O’Reilly Media: Sebastopol, California Nycflights13 v1.0.0 https://www.rdocumentation.org/packages/nycflights13/versions/1.0.0