Resumen

Este estudio analiza la base de datos “Jobs and Salaries in Data field 2024” de Kaggle, elaborada por Murilo Zangari, que contiene información sobre salarios en diversos puestos de trabajo en el campo de la ciencia de datos. Utilizando técnicas de análisis exploratorio de datos y visualización con R, se investigaron tres preguntas clave: (1) diferencias salariales según la modalidad de empleo (remota, híbrida y presencial), (2) brechas salariales según la divisa de pago y (3) influencia del tamaño de la empresa en los salarios de los trabajadores dependiendo de su puesto.

El análisis reveló que los trabajos presenciales presentan salarios significativamente más altos en comparación con las modalidades híbrida y remota. Asimismo, se identificaron brechas salariales notables entre diferentes divisas, destacando la diferencia entre la lira turca y el real brasileño frente al dólar estadounidense. Además, el tamaño de la empresa también influye en los salarios, con las empresas medianas ofreciendo los salarios más altos en comparación con las pequeñas y grandes empresas.

Estos hallazgos proporcionan una visión integral de las dinámicas salariales en el campo de la ciencia de datos, ayudando a comprender mejor las variaciones salariales basadas en la modalidad de trabajo, la divisa de pago y el tamaño de la empresa.

1. Análisis de la base de datos

1.1 Descripción de la base de datos

Para este trabajo se decidió utilizar una base de datos obtenida de la página web KAGGLE “Jobs and Salaries in Data field 2024” del autor: MURILO ZANGARI, esta información es de dominio público, por lo que se puede descargar gratuitamente del sitio: “https://www.kaggle.com/datasets/murilozangari/jobs-and-salaries-in-data-field-2024” El autor ademas menciona que la base de datos proviene del sitio web: “ai-jobs.net/salaries/2024/.”

Esta base de datos contiene informacion a cerca de los salarios de algunos puestos de trabajo como analista de datos, desarrollador de datos, ingeniero de inteligencia artificial, entre otros.

1.2 Descripción de las variables

  1. work_year: El año donde se hizo el registro.
  2. experience_level: Clasifica el puesto de los trabajadores en: “Entry-level”, “Executive”, “Senior”, “Mid-level”.
  3. employment_type: Especifica los tipos de empleos, ya sean ‘Full-time’, ‘Part-time’, ‘Contract’, entre otros.
  4. job_title: Menciona el nombre del puesto del trabajo, como ‘Data Scientist’, ‘Data Engineer’, o ‘Data Analyst’.
  5. salary: Es el salario anual bruto en una divisa específica.
  6. salary_currency: La divisa en la que se realiza el pago.
  7. salary_in_usd: Es el salario convertido a dólares
  8. employee_residence: Es el país de recidencia del empleado.
  9. work_setting: Es la modalidad del empleo, ya sea ‘Remote’, ‘In-person’, o ‘Hybrid’.
  10. company_location: El pais donde se encuentra la empresa
  11. company_size: Es el tamaño de la empresa, estan organizadas en small (S), medium (M), y large (L).
  12. job_category: Es la categoría del empleo, es una variable muy similar a la del nombre del puesto de trabajo

El nivel de experiencia del empleado se puede relacionar con el salario, para obtener la tendencia sobre si a mayor puesto mayor es el pago. O podemos relacionar el salario bruto con el salario en dólares, para ver si existen brechas salariales a partir de las diferencias de moneda. También podemos relacionar la modalidad de la empresa con el nivel de experiencia o con el salario.

1.3 Cargar la base de datos

Procedemos a cargar la base de datos en cuestion, y además designar el objeto con el que se estará trabajando para no alterar la base de datos original

library(readr)
jobs_in_data_2024 <- read_csv("FECA/jobs_in_data_2024.csv")
## Rows: 14199 Columns: 12
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (9): experience_level, employment_type, job_title, salary_currency, empl...
## dbl (3): work_year, salary, salary_in_usd
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
trabajos= jobs_in_data_2024

2. Preguntas de investigación

2.1 ¿Hay diferencias significativas en el salario anual entre los empleados que trabajan de manera remota, híbrida o presencial?

Hay varias maneras de dar respuesta a esta pregunta, sin embargo, se recurrirá a hacer una gráfica a manera de histograma, con el fin de que segrege el nivel de salarios, con esto, podemos ver la distribución de cuantas personas se encuentran en las clases salariales y así poder dar respuesta

2.1.1 Procedimiento

Cargamos la paquetería de ggplot2 para poder realizar gráficas, además, con el comando options() quitaremos la notación científica para mayor comprensión

library(ggplot2)
options(scipen=999)
ggplot(trabajos, aes(x=salary_in_usd))+
  geom_histogram(aes(fill=work_setting))+
  labs(title='Distribución salarial por modalidad de empleo',
       fill="Modalidad")+
  xlab('Salario en dólares')+ 
  ylab('Empleados')

2.1.2 Respuesta a la pregunta 2.1

El histograma si ayuda a dar respuesta a la pregunta, y gracias a que la gráfica tomó colores con base a la modalidad del trabajo, se pudo ver la distribución de cada una de ellas, y podemos observar que los trabajos en persona presentan salarios mayores con respecto a las otras modalidades, una diferencia de 100,000 dólares anuales, por lo que se puede considerar que la brecha salarial entre los trabajos en persona que híbridos o remotos si es significativa. Además, esta gráfica nos ayuda a comprender que las modalidades de empleos presentan una distribución bastante similar en cuanto a los salarios otorgados.

2.2 ¿Se observa una brecha salarial dependiendo de la divisa con la que se pago el salario?

Para contestar a esta pregunta se tendrían que agrupar los salarios segun la divisa en la que se percibe el pago, y hacer un resumen del pago promedio en dólares que se percibe por divisa

2.2.1 Procedimiento

Para realizar lo siguiente se activará la librería tidyverse para acceder al uso de las pipas. Y lo que se pretende hacer es un agrupamiento del salario por divisas, y que se resuma en una columna extra el pago promedio que se percibe en dólares.

library(tidyverse)
salarios=trabajos%>% group_by(salary_currency) %>% 
  summarise(Salario_promedio=mean(salary_in_usd))
print(salarios)
## # A tibble: 12 × 2
##    salary_currency Salario_promedio
##    <chr>                      <dbl>
##  1 AUD                       78660 
##  2 BRL                       26169.
##  3 CAD                      110108.
##  4 CHF                      106307 
##  5 DKK                       31193.
##  6 EUR                       64331.
##  7 GBP                       81441.
##  8 NZD                      125000 
##  9 PLN                       36099.
## 10 SGD                       81724.
## 11 TRY                       22189.
## 12 USD                      155413.

2.2.2 Respuesta a la pregunta 2.2

Efectivamente se puede observar una brecha salarial entre las divisas, la diferencia más notoria es entre la lira turca (TRY) y el real brasileño (BRL), en comparación con el dólar estadounidense (USD), estas diferencias pueden ser causadas a la naturaleza de los trabajos que se mencionan en esta base de datos, ya que en Estados Unidos se deduce que hay más trabajos de analista de datos, o ingeniero en inteligencia artificial debido a las grandes empresas tecnológicas.

2.3 ¿El tamaño de la empresa es un factor que influye en el salario de los trabajadores dependiendo de su puesto en ella?

Esta pregunta se puede responder mediante el uso de gráficas que incluyan estas variables, así, se expondría por tamaño de la empresa el salario promedio que obtienen los trabajadores según su puesto

2.3.1 Procedimiento

Se hará una gráfica de barras con el salario promedio en dólares que perciben los trabajadores por puesto, y se agruparán según el tamaño de la empresa.

ggplot(trabajos, aes(x=experience_level, y=salary_in_usd))+
        geom_point()+
  facet_wrap(~company_size)+
  scale_y_continuous(breaks = seq(0,460000, by=50000))+
  labs(title = 'Nivel salarial dependiendo del tamaño de la empresa 
       y el nivel de puesto de los trabajadores')+
  xlab("Puesto de los trabajadores")+
  ylab("Salario en dólares")+
  theme_classic()+
  theme(axis.text.x = element_text(angle=10), 
        plot.title = element_text(hjust = 0.5))

2.3.2 Respuesta a la pregunta 2.3

El tamaño de la empresa si es un factor que influye en los salarios de los trabajadores, esto se puede apreciar en la gráfica de la derecha, que se refiere a las empresas de tamaño pequeño, se pueden ver que los dueños de las empresas suelen ganar más que los empleados nuevos, el salto entre las empresas chicas y medianas es bastante notorio, ya que todos los trabajadores parecen ganar mucho más, sin embargo, al pasar a las empresas grandes (gráfica de la izquierda) parece ser que los salarios de todos los puestos se reducen.