[LINKEDIN] Automatización + Limpieza de datos + Análisis
El cliente
Somos analistas de datos y queremos analizar el mercado laboral en éstos roles. Para eso estamos obteniendo datos de los puestos de trabajo que figuran en LinkedIn en áreas de análisis de datos para distintos países.
LinkedIn: Es una red social profesional donde muchas empresas publican ofertas de trabajo.
El problema
Queremos sacar conclusiones del mercado laboral del mundo de los datos. Para eso tenemos información sobre una descarga de datos de webscrapping que hemos conseguido y tenemos que validar primer si los datos son correctos y luego llegar a determinadas conclusiones.
Los Datos
La solución
El primer paso es limpiar los datos y crear nuevas tablas con los datos limpios. El segundo paso será automatizar esa limpieza con un SP que se ejecute de forma diaria y nos actualice la información en la nueva tabla.
El proceso
Análisis exploratorio previo
- ¿Que tipo de datos tenemos?
- ¿Que limpieza observamos que podríamos hacer?
- ¿Como validamos datos?
Ejecución
Parte I – Crear tabla linkedin_data + SP de recarga de datos
- Cargar la base de datos “linkedin_data”
- Crear tabla linkedin_ofertas (con los siguientes campos: linkedin_ofertas ( fecha_actualizacion datetime, nombre_empresa varchar(200) , fecha_busqueda_oferta_linkedin datetime , fecha_publicacion_oferta date , pais_oferta varchar(200), search_id_oferta int , titulo_oferta varchar(200) )
- Modificar las restricciones de la fecha ejecutuando la siguiente sentencia: SET @@SESSION.sql_mode=’ALLOW_INVALID_DATES’;
- Definir la consulta que va a dejar los datos como queremos. (limpiarlos)
- Crear un stored procedure con la query de limpieza que inserte datos en la tabla.
- Crear el evento que ejecute el SP de forma diaria
Parte II – Crear tabla linkedin_busquedas + SP de recarga de datos
- Crear tabla linkedin_busquedas (linkedin_busquedas ( id_busqueda INT PRIMARY KEY, fecha_busqueda datetime , fecha_actualizacion datetime, keyword_busqueda varchar(200) , pais_busqueda varchar(200), n_resultados_busqueda int )
- Modificar las restricciones de la fecha ejecutuando la siguiente sentencia: SET @@SESSION.sql_mode=’ALLOW_INVALID_DATES’;
- Definir la consulta que va a dejar los datos como queremos. (limpiarlos)
- Crear un stored procedure con la query de limpieza que inserte datos en la tabla.
- Crear el evento que ejecute el SP de forma diaria
Parte III – Análisis de los datos de las tabla
- ¿Cúales son las empresas con mayor cantidad de ofertas?
- ¿Que cantidad de ofertas tenemos en la tabla por ubicación?
- ¿Cúal es la media de días de publicación de las ofertas por país?
- ¿Que cantidad de ofertas tenemos por día publicados?
- ¿Cúales son los top 10 títulos de roles que se usan para publicar ofertas?
- Cúales con las 5 ubicaciones con mayor cantidad de ofertas activas
- ¿Cuantas ofertas de trabajo hay combinando keyowrd con título oferta? ¿Puedes devolver la cantidad agregando por ambos campos?
- ¿Cuantos puestos tenemos como junior, puedes traer la cantidad por título de oferta?
- ¿ Puedes ahora devolver la cantidad de ofertas con el título junior, pero por país?
- Podemos saber la cantidad de ofertas publicadas por mes y keyword?¿Que meses son mas top y con. que keywords?