En esta sección cargamos las librerías necesarias y leemos el archivo Excel.
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ ggplot2 3.5.1 ✔ tibble 3.2.1
## ✔ lubridate 1.9.4 ✔ tidyr 1.3.1
## ✔ purrr 1.0.4
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(readxl)
library(tinytex)
taxi_data <- read_excel("C:/Users/tomas/Documents/UniAndes/MCIAM/1. Primer Semestre/Metodologías de investigación en transporte/Taller R/Tarea 2_TAXI _300.xlsx")
head(taxi_data)
Se agrupa por educ_level y gender. Se
calcula el promedio de gross_rev1 omitiendo valores
faltantes. prom_ganancias muestra la ganancia promedio para
cada combinación de nivel educativo y género.
prom_ganancias <- taxi_data %>%
group_by(educ_level, gender) %>%
summarise(
prom_ganancias = mean(gross_rev1, na.rm = TRUE)
)
## `summarise()` has grouped output by 'educ_level'. You can override using the
## `.groups` argument.
prom_ganancias
Primero se filtra la base para considerar solo
DayNight_oper == 1. Con summarise() se
obtienen los promedios de distancia y consumo de combustible. Luego, se
agrupa por educ_level, y se hace un conteo de casos con
n().
prom_dist_noche <- taxi_data %>%
filter(DayNight_oper == 1) %>%
summarise(
prom_dist = mean(dist_shift, na.rm = TRUE)
)
prom_dist_noche
prom_fuel_noche <- taxi_data %>%
filter(DayNight_oper == 1) %>%
summarise(
prom_fuel = mean(fuel_exp, na.rm = TRUE)
)
prom_fuel_noche
taxi_noche <- taxi_data %>%
filter(DayNight_oper == 1) %>%
group_by(educ_level) %>%
summarise(
taxis = n()
)
taxi_noche
Se agrupa por radio_equip y educ_level
respectivamente. Se calcula en cada caso la experiencia promedio y la
edad promedio.
comp_radio <- taxi_data %>%
group_by(radio_equip) %>%
summarise(
prom_exp = mean(exper, na.rm = TRUE),
prom_age = mean(age, na.rm = TRUE)
)
comp_radio
comp_educ <- taxi_data %>%
group_by(educ_level) %>%
summarise(
prom_exp = mean(exper, na.rm = TRUE),
prom_age = mean(age, na.rm = TRUE)
)
comp_educ
Se filtra la base por age > 40. Se agrupa por
educ_level y se calcula la distancia promedio (prom_dist).
Luego se cuenta cuántos tienen equipo de radio (total_radio) y se saca
la ganancia promedio (prom_ganancia).
dist_educ_mayores40 <- taxi_data %>%
filter(age > 40) %>%
group_by(educ_level) %>%
summarise(
prom_dist = mean(dist_shift, na.rm = TRUE)
)
dist_educ_mayores40
radio_mayores40 <- taxi_data %>%
filter(age > 40) %>%
summarise(
total_radio = sum(radio_equip == 1, na.rm = TRUE)
)
radio_mayores40
ganancia_mayores40 <- taxi_data %>%
filter(age > 40) %>%
summarise(
prom_ganancia = mean(gross_rev1, na.rm = TRUE)
)
ganancia_mayores40
library(ggplot2)
taxi_plot <- read_excel("C:/Users/tomas/Documents/UniAndes/MCIAM/1. Primer Semestre/Metodologías de investigación en transporte/Taller R/Tarea 2_TAXI _300_taller 1.xlsx")
head(taxi_plot)
¿Qué tanto influye el tipo de combustible en la rentabilidad del
conductor? Se utiliza gross_rev1 como variable de
rentabilidad y fuel_type como tipo de combustible. La
variable de fuel_exp sirve para tener en cuenta el gasto de
combustible y calcular las márgenes de eficiencia económica para cada
tipo de combustible.
ggplot(taxi_plot, aes(x = fuel_type, y = gross_rev1)) +
geom_boxplot() +
labs(title = "Ganancias totales por tipo de combustible",
x = "Tipo de combustible",
y = "Ganancia bruta") +
theme_minimal()
## Warning: Removed 12 rows containing non-finite outside the scale range
## (`stat_boxplot()`).
taxi_plot <- taxi_plot %>%
mutate(
utilidad = gross_rev1-fuel_exp)
ggplot(taxi_plot, aes(x = fuel_type, y = utilidad)) +
geom_boxplot() +
labs(title = "Rentabilidad por tipo de combustible",
x = "Tipo de combustible",
y = "Utilidad") +
theme_minimal()
## Warning: Removed 13 rows containing non-finite outside the scale range
## (`stat_boxplot()`).
taxi_plot <- taxi_plot %>%
mutate(
eficiencia = (fuel_exp/dist_shift))
lklkjh