Motivación
En 2012, Harvard Business Review declaró que data scientist era el trabajo más atractivo del siglo XXI. Desde entonces, el término data scientist no ha dejado de ganar popularidad.

La imagen anterior muestra el interés por la palabra clave "data science" en Google Search de 2016 a 2021. Podemos ver que el interés por data science ha aumentado de forma constante en los últimos cinco años.
Además de ser un puesto bien pagado, te permite combinar distintas habilidades, extraer insights interesantes de datos reales y generar impacto en la sociedad con tu análisis. Por eso tiene sentido que se le considerara el trabajo más atractivo del siglo XXI.
Sin embargo, antes de postular a un puesto en data science, conviene analizar las características y la trayectoria de quienes ya trabajan como data scientists. Conocer sus antecedentes y habilidades te dará la información necesaria para prepararte con las competencias adecuadas y destacar entre otros candidatos.
Algunas preguntas interesantes que podemos analizar son:
- ¿Qué habilidades comparten la mayoría de los data scientists?
- ¿En qué se diferencian de las de otros perfiles como machine learning engineer, data analyst y data engineer?
- ¿Cuáles son las titulaciones universitarias más habituales?
- ¿Hace falta un máster o un doctorado para ser data scientist?
- ¿Qué porcentaje de hombres y mujeres hay en el ámbito de data science?
- ¿Dónde se concentran la mayoría de empleos en data science?
- ¿Cómo cambia con el tiempo la popularidad de los distintos trabajos relacionados con datos?
- ¿Cómo evolucionan con el tiempo las habilidades que se piden a los data scientists?
Consigue los datos
Usaremos datos de más de 160.000 data scientists, 570.000 data analysts, más de 100.000 data engineers y más de 19.000 machine learning engineers de todo el mundo. Los conjuntos de datos se han extraído de Diffbot, el grafo de conocimiento más grande del mundo. Encuentra más instrucciones sobre cómo usar Diffbot aquí.
Para que te resulte más fácil seguir el artículo, todos los datos usados están disponibles en este repositorio. Son de acceso y descarga gratuitos.
El cuaderno con el código de este artículo está aquí. Si prefieres obtener los datos directamente desde Diffbot, puedes usar este notebook.
Encuentra los lenguajes más populares
¿Cuáles son las habilidades principales de data scientists, data analysts, data engineers y machine learning engineers? Podemos responder a esta pregunta con los datos que recogen las 100 habilidades más populares entre personas con estos cargos.
import pandas as pd
skill_count = pd.read_csv(
"https://media.githubusercontent.com/media/khuyentran1401/dataset/master/data_science_market/all_skills.csv",
index_col=0,
)
# Show the top 10 rows
skill_count.head(10)

Usaremos este dataset para analizar la popularidad de distintos lenguajes de programación dentro de cada perfil relacionado con datos. Visualizaremos el dataset con una matriz de burbujas creada en Observable.
Una matriz de burbujas utiliza tamaños y colores para representar información bidimensional. Las filas representan los cargos y las columnas representan los lenguajes. Cuanto más grande es la burbuja, con más frecuencia se usa ese lenguaje en una determinada categoría profesional.

Para definir el tamaño de las burbujas, calcularemos la proporción entre la frecuencia de un lenguaje y la frecuencia máxima entre todos los lenguajes y puestos.
languages = skill_count[
skill_count["skill"].isin(
["python", "r", "sql", "c", "c++", "matlab", "java", "javascript"]
)
]
languages["Ratio to All Skills"] = languages["count"].apply(
lambda c: c / max(skill_count["count"])
)
# View languages used by data analysts
languages[languages["Title"] == "Data Analyst"]

Las burbujas se resaltan si superan un cierto número de ocurrencias. Puedes usar el control deslizante para elegir el umbral a partir del cual se resaltan. Por ejemplo, si eliges 100.000, solo las burbujas con un recuento superior a 100.000 se verán en morado intenso.
Otra cosa interesante que podemos hacer con este gráfico es ordenar las burbujas por cargo. Usemos esta función para encontrar las habilidades principales de cada puesto.

Puedes interactuar con el gráfico aquí. A partir de este gráfico, vemos que:
- Las tres habilidades principales de los data analysts, en orden descendente, son SQL, Python y R.
- Las tres habilidades principales de los data engineers, en orden descendente, son SQL, Python y Java.
- Las tres habilidades principales de los data scientists, en orden descendente, son Python, R y SQL.
- Las tres habilidades principales de los machine learning engineers, en orden descendente, son Python, Java y C++.
Analiza la formación académica
Las titulaciones más comunes
¿Cuáles son las titulaciones universitarias más habituales en los perfiles relacionados con datos? Para responder, descargaremos los datos que muestran la frecuencia de las principales titulaciones por perfil.
!wget 'majors_df.pkl' 'https://github.com/khuyentran1401/dataset/raw/master/data_science_market/majors_df.pkl'
import pickle
majors_df = pickle.load(open("majors_df.pkl", "rb"))
majors_df["data scientist"]

Visualicemos este dataset para entenderlo mejor. Empecemos creando una función para representar las titulaciones de un perfil.
import plotly.express as px
def plot_majors(title: str, majors_df: dict):
majors = majors_df[title]
return px.bar(data_frame=majors, x="name", y="value")
Las titulaciones principales de los data scientists:
plot_majors('data scientist', majors_df)

Interactúa con el gráfico aquí. Dado que muchos puestos en data science requieren conocimientos de programación y matemáticas, no sorprende que las dos titulaciones más comunes entre data scientists sean informática y matemáticas.
Las titulaciones principales de los data engineers:
plot_majors('data engineer', majors_df)

Interactúa con el gráfico aquí. Dado que el trabajo de los data engineers exige conocer distintas tecnologías y lenguajes de programación, tiene sentido que la mayoría proceda de informática y tecnologías de la información, más que de matemáticas.
Las titulaciones principales de los data analysts:
plot_majors('data analyst', majors_df)

Interactúa con el gráfico aquí. Las tres titulaciones más comunes entre data analysts son administración de empresas, informática y economía. Tiene sentido, ya que su trabajo implica interpretar datos.
Las titulaciones principales de los machine learning engineers:
plot_majors('machine learning engineer', majors_df)

Interactúa con el gráfico aquí. También podemos usar un gráfico de círculos anidados para ver las diferencias de titulaciones entre distintos puestos.

Puedes interactuar con el gráfico anterior aquí.
Analiza los grados y posgrados
Es habitual ver descripciones de puestos de data scientist que piden máster o doctorado. Pero, ¿cuántas personas que trabajan como data scientists tienen realmente un máster o un Ph.D.?
Respondamos descargando los datos que muestran el recuento por nivel académico y perfil.
degree_df = pd.read_csv(
"https://media.githubusercontent.com/media/khuyentran1401/dataset/master/data_science_market/degrees.csv"
)
degree_df.head(10)

Vemos que los niveles incluyen:
- Educación secundaria
- Associate’s
- Bachelor’s (grado)
- Master’s (máster)
- Ph.D. (doctorado)
- Certificado
Visualicemos los datos con una matriz de burbujas.

Puedes explorar el gráfico aquí. Se observa que el nivel más común en todos los perfiles relacionados con datos es el bachelor’s (grado). Tiene sentido: la mayoría de empleos del sector requieren al menos un grado, y quienes tienen máster o doctorado también cuentan con un grado.
Así se ven los datos con un gráfico de barras agrupadas.

Conviene destacar que el número de data analysts con grado es casi el doble del de quienes tienen máster. Sin embargo, entre los data scientists, el número con grado es similar al de quienes tienen máster.
Esto indica que el porcentaje de data scientists que cursan estudios de posgrado es mayor que el de data analysts que continúan estudiando tras obtener el grado.
Analiza el género
¿Cuál es la proporción entre hombres y mujeres en los roles relacionados con datos? Respondamos con los datos que muestran el recuento por género y puesto.
gender_df = pd.read_csv(
"https://media.githubusercontent.com/media/khuyentran1401/dataset/master/data_science_market/genders.csv"
)
gender_df.head(10)

A continuación, visualizamos los datos con un gráfico de barras agrupadas.

Del gráfico se desprende que:
- En todos los trabajos relacionados con datos, excepto data entry, hay más hombres que mujeres.
- El número de hombres casi duplica al de mujeres en roles como data analyst y statistician.
- El número de hombres más que duplica al de mujeres en roles como data scientist, data engineer y machine learning engineer.
Analiza las ubicaciones
Los estados más populares para data scientists en EE. UU.
¿Cuáles son los estados más populares para data scientists? Empecemos obteniendo los datos con el número de data scientists por estado.
state_jobs = pd.read_csv(
"https://media.githubusercontent.com/media/khuyentran1401/dataset/master/data_science_market/state_jobs.csv"
)
state_jobs.head(10)

Después, representaremos los datos con folium, una librería de Python para crear mapas.
state_geo = "https://raw.githubusercontent.com/python-visualization/folium/master/examples/data/us-states.json"
m = folium.Map(location=[48, -102], zoom_start=3)
folium.Choropleth(
geo_data=state_geo,
name="choropleth",
data=state_jobs,
columns=["state", "count"],
key_on="feature.id",
fill_color="YlGn",
fill_opacity=0.7,
line_opacity=0.2,
legend_name="Number of Data Science Jobs",
).add_to(m)
folium.LayerControl().add_to(m)
m

Puedes interactuar con el mapa aquí. En el mapa se observa que el estado con más data scientists es California. En segundo, tercer y cuarto lugar están Nueva York, Massachusetts y Texas, respectivamente.
Los 25 países más populares del mundo para data scientists
¿Cuáles son los 25 países más populares para data scientists? Empecemos descargando y cargando los datos con el número de data scientists por país:
!wget 'countries.pkl' 'https://github.com/khuyentran1401/dataset/raw/master/data_science_market/countries.pkl'
countries = pickle.load(open("countries.pkl", "rb"))
A continuación, representamos los 25 países principales para data scientists:
def plot_top_25_locations(title: str, locations: dict):
data = locations[title]
return px.bar(data_frame=data, x="location", y="count")
plot_top_25_locations("data scientist", countries)

Interactúa con el gráfico aquí. Los cinco países más populares para data scientists son:
- Estados Unidos
- India
- Francia
- Reino Unido
- Alemania
Las 25 ciudades más populares del mundo para data scientists
¿Cuáles son las 25 ciudades más populares para data scientists? Descargaremos los datos con el número de data scientists por ciudad:
!wget 'cities.pkl' 'https://github.com/khuyentran1401/dataset/raw/master/data_science_market/cities.pkl'
cities = pickle.load(open("cities.pkl", "rb"))
El gráfico de las 25 ciudades principales para data scientists:

Interactúa con el gráfico aquí. Del gráfico se desprende que las cinco ciudades más populares para data scientists son:
- San Francisco
- Bengaluru
- Londres
- París
- Nueva York
Los títulos de puesto más comunes para data scientists
Existen múltiples denominaciones relacionadas con el rol de data scientist, como senior data scientist, junior data scientist, data scientist intern y otras. ¿No estaría bien ver qué popularidad tiene cada una?
Empezaremos obteniendo los datos con el recuento de todos los títulos relacionados con data scientist:
!wget "top_titles.pkl" "https://github.com/khuyentran1401/dataset/raw/master/data_science_market/top_titles.pkl"
top_titles = pickle.load(open("top_titles.pkl", "rb"))
top_titles["data scientist"]

El gráfico de barras con los títulos principales relacionados con data scientist:

Interactúa con el gráfico aquí. También podemos usar un gráfico de círculos anidados para visualizar la variedad de denominaciones en varios puestos relacionados con datos.

Puedes interactuar con el gráfico tú mismo aquí.
Analiza las tendencias del sector
Palabras clave
¿Cómo ha cambiado con el tiempo el interés en la palabra clave data scientist en Google Search? Podemos obtener esos datos con pytrends y luego representarlos con Plotly Express:
from pytrends.request import TrendReq
def plot_keyword_trend(title: str):
pytrends = TrendReq(hl="en-US", tz=360)
pytrends.build_payload(kw_list=[title])
df = pytrends.interest_over_time()
return px.line(data_frame=df, y=title)
plot_keyword_trend("data scientist")

Interactúa con el gráfico aquí. Parece que el interés por la palabra clave data scientist aumenta de forma lineal de 2016 a 2021.
Evolución del número de puestos a lo largo del tiempo
¿Cómo ha cambiado con el tiempo el número de puestos? Podemos averiguarlo con los datos que muestran la evolución del número de puestos a tiempo completo.
dates_df = pd.read_csv(
"https://media.githubusercontent.com/media/khuyentran1401/dataset/master/data_science_market/dates.csv",
index_col=0)
dates_df.head(10)

La primera fila indica que en 1988 había 40 data scientists trabajando. La segunda fila indica que en 1989 había 52.
La representación de líneas de los datos anteriores:
px.line(dates_df, x="date", y="value", color="name")

Interactúa con el gráfico aquí. Algunas ideas clave del gráfico:
- El número de statisticians se mantiene estable con el tiempo.
- Antes de 2010, data entry era el trabajo más popular entre los relacionados con datos.
- En 2010, data analyst superó a data entry.
- En 2013, los roles de data scientist, data analyst y data engineer superaron a statistician; data scientist creció de forma exponencial mientras que el data entry manual perdió relevancia.
- En 2019, el rol de machine learning engineer superó por fin a statistician.
Usemos ahora una carrera de barras para ver el cambio en el ranking de los distintos puestos relacionados con datos:

¡Muy llamativo! Con este gráfico podemos ver el momento exacto en que cambia el ranking. Puedes visualizarlo tú mismo aquí.
Evolución del número de habilidades a lo largo del tiempo
¿Cómo han cambiado con el tiempo las frecuencias de las habilidades principales para data scientists? Observémoslo con los datos que muestran el número de habilidades por periodo.
skills_df = pd.read_csv(
"https://media.githubusercontent.com/media/khuyentran1401/dataset/master/data_science_market/skills_over_time.csv",
index_col=0,
)
skills_df.head(10)

A continuación, crearemos una carrera de barras con los datos anteriores:

Vemos que, antes de 2014, teaching y economics eran las dos habilidades más populares entre los data scientists. Sin embargo, a partir de 2014, Python superó a ambas y se convirtió en la habilidad más demandada.
Conclusión
¿Listo para demostrar tus habilidades profesionales en data science? Echa un vistazo al programa de certificación de DataCamp y a los servicios de carrera profesional para conseguir el trabajo en datos con el que sueñas.
