Este proyecto tiene como objetivo realizar un proceso de ETL y EDA a un dataset de películas para poder generar un sistema de recomendación de películas.
Transformaciones:
Algunos campos, como belongs_to_collection, production_companies y otros (ver diccionario de datos) están anidados, esto es o bien tienen un diccionario o una lista como valores en cada fila, ¡deberán desanidarlos para poder y unirlos al dataset de nuevo hacer alguna de las consultas de la API! O bien buscar la manera de acceder a esos datos sin desanidarlos.
Los valores nulos de los campos revenue, budget deben ser rellenados por el número 0.
Los valores nulos del campo release date deben eliminarse.
De haber fechas, deberán tener el formato AAAA-mm-dd, además deberán crear la columna release_year donde extraerán el año de la fecha de estreno.
Crear la columna con el retorno de inversión, llamada return con los campos revenue y budget, dividiendo estas dos últimas revenue / budget, cuando no hay datos disponibles para calcularlo, deberá tomar el valor 0.
Eliminar las columnas que no serán utilizadas, video,imdb_id,adult,original_title,vote_count,poster_path y homepage.
Desarrollo API: Propones disponibilizar los datos de la empresa usando el framework FastAPI.
Deben crear 6 funciones para los endpoints que se consumirán en la API.
Para poder realizar el análisis de las películas, se realizó un proceso de ETL (Extracción, Transformación y Carga) con los siguientes pasos:
Extracción: se obtuvo el dataset de películas desde movies_dataset.csv.
Transformación: se eliminaron columnas innecesarias, se convirtieron los tipos de datos a los adecuados y se eliminaron filas con datos faltantes. Carga: se cargó el dataset limpio en un DataFrame de pandas para su posterior análisis.
Una vez cargado el dataset, se procedió a realizar un análisis exploratorio de datos (EDA). Este proceso incluyó la creación de visualizaciones para poder entender mejor los datos, así como la realización de una nube de palabras para ver las palabras que se repetían con mayor frecuencia en el título de las películas.
Para poder generar un sistema de recomendación de películas, se utilizó el algoritmo de similitud coseno. Este algoritmo se basa en la similitud entre dos vectores, en este caso, los vectores corresponden a las películas.
Se creó una matriz de similitud utilizando el algoritmo de similitud coseno. Se utilizó esta matriz para generar una lista de películas recomendadas para cada película en el dataset.
Se creó una API utilizando la librería FastAPI para poder consumir los datos y obtener recomendaciones de películas. Codigo API

