2022/07/26

S3 Práctica: Gráficas de Dispersión: Parte 1,

PRÁCTICA: GRÁFICAS DE DISPERSIÓN: PARTE 1

Continuaremos utilizando la misma libreta de Gráfica de Dispersión pero ahora va a ver la parte de código, para esto hemos traído un Ejemplo tomado de 'Kaggle' donde va a analizar cómo funciona la Industria del Cine, de las Películas a través de esta Base de Datos.
La Base de Datos que se encuentra en esta liga, se podra abrir, va a ver qué es lo que va a ver, de este conjunto de Datos está en Inglés, el Título es 'Industria de las Películas', 3 décadas de películas,
¿Qué tiene este Data Set?
Nos plantea la pregunta, '¿La Industria de las Películas está muriendo?' también nos plantea la otra pregunta,
¿Netflix es el Nuevo Rey del Entretenimiento?
Bueno, el Investigador que hizo este dato se tenía estas inquietudes y decidió empezar a ver cuales son los factores de mayor impacto que intervienen en el éxito de las películas y quién se preguntó,
¿Cuáles son las películas más exitosas si los actores intervienen?,
¿Si el género interviene en que sea exitoso o no?,
¿Si el Rating del Usuario Interviene?, Entre otras cosas más, bueno, esa es la manera rápida que tiene este Data Set.
Este Data Set tiene de contenido 6,820 películas, es decir, 220 películas por año en este Intervalo de años y cada una de las películas tiene un atributo diferente.
Sabemos el Presupuesto con el que se hizo, la Compañía, el País, el Director, el Género, Cuánto nos Devolvió de Dinero en Taquilla, el Nombre, el Rating, la Fecha en que se Estrenó, el Tiempo de Duración, el Score, los Votos, Quién es el Actor Principal, Quién es el Escritor y Cuál es el Año.
Ya que sabemos más o menos que es el Data Set que voy a ocupar, le doy Descargar.
Si están trabajando en este en esta parte con Kaggle es muy probable que les exija una cuenta para poder descargar, es probable que ya la hayan tenido porque en ejercicios pasados la hemos utilizado, si es así simplemente Ingresen, Descarguenla y si no es así Creen una cuenta de Kaggle y descarguen.
Acuérdese es importante que lo grabamos en nuestra carpeta de Data que está en la misma carpeta de nuestro cuaderno, en mi caso ya lo tengo descargado.
Yo puedo venir a mi carpeta de cuadernos, tengo mi Data y tengo esta carpeta que se llama Movies, en esta carpeta está ese archivo, Ese Archivo lo puedo abrir con Excel, Por Ejemplo, y está toda la información pero, quedamos que son muchísimos, muchísisimos los datos.
Bueno, va a regresarnos a nuestra libreta.
Como estamos ocupando un Data Set va a importar Pandas para poder trabajar con él y por 'pandas as pd' como en veces pasadas lo hemos usado y empieza nuestro ejercicio.
Nuestro Data Frame es igual a lo que lea Pandas del Archivo Movies.
Fíjense que nuestra Ruta es: 'data/movies/movies.csv' si ustedes deciden ponerla en otras rutas simplemente tienen que modificar esa instrucción.
Y me sale este error, este error hay algunas Bases de Kaggle que nos presentan este pequeño errorsito con esta: 'UnicodeDecodeError utf-8' la forma de solucionarlo es hacer una pequeña modificación a nuestra instrucción 'pd.read_csv'
¿Por qué les mencionó esto?
Nosotros los invitamos a que si esta Base de Datos no les gusta, repitan la práctica con una Base de Datos diferente pero, es probable que tenga un formato distinto entonces, les pusimos este Ejemplo en particular para que vean
¿Cómo se soluciona?
Más abajo pusimos la instrucción idéntica pero, le pusimos esta extensión 'encoding = "cp1252" si yo, le doy run, ahora si lee bien el archivo.
Entonces, si están explorando por su cuenta diferentes Bases de Datos y les aparece este errorsito de 'UnicodeDecodeError utf-8' no puede ser decodificado, simplemente agregarle este en coding y con eso ya van a poder trabajarlo pero, bueno
¿Como sé que lo que leÍ está funcionado?
De igual forma que en otras veces, voy a ocupar la instrucción 'df.head' le doy run y con 'head' me presentan los 5 primeros datos de mi tabla.
Tengo para 5 películas diferentes 1.
Stand by me 2.
Ferris Bueller's Day Off 3.
Top Gun 4.
Aliens 5.Flight of the Navigator De estas 5 toda la información que antes mencionamos.
El Presupuesto, La Compañía, El País, El Director, entre otros datos.
Bueno, va a ver que se podra aprender de esto de una forma rápida, que se podra observar, para eso Pandas tiene una función muy amigable que se llama 'df.describe' ya la hemos ocupado anteriormente, en anteriores vídeos pero va a ver qué nos arroja.
Si yo le doy describe, me acorta mucho mis columnas si se dan cuenta, aquí abajo se mantiene 'Budget' igual que arriba, se mantiene 'Gross' igual que arriba pero estas 4 columnas: Company, Country, Director y Genre las omitió, estas 4 las omitió por que discribe se centra en las tablas con valores numéricos, no en valores descriptivos o en texto.
También ha omitió la columna de Nombre, de Rating, de Fecha de Estreno pero, sí respeto la columna de Run Time, la columna de Score, la columna de Votos y la del Año.
Bueno va a ver rápidamente estos datos Lo primero que va a gráficar o al menos nuestra primer columna, que está aquí es la de presupuesto, nos dice que hay 6,820 elementos en esta columna tiene una Media, que se ve aquí, una Desviación Estándar y un Mínimo de '0' pero, es imposible que se haga una película con $ 0.00 USD entonces, seguramente esta Base de Datos tiene por ahí errores equivocados dentro de sus 6,820 registros porque no hay una película que se haga con $ 0.00 USD es la primera cosa que salta a la vista que tiene que corregir.
Para eso va a ocupar la instrucción 'df.drop' o 'Dejar Caer' en español, sería de nuestro Data Frame va a buscar todos los que tengan un budget de $ 0.00 USD y los va a quitar de nuestro Data Frame.
Bueno, va a darle Ejecutar y ahí ya se eliminaron todos los registros que tengan un budget de $ 0.00 USD va a darle escribir para ver
¿Qué cambio?
fíjense ahora de escribir nos dice qué número elementos son 4,638 a diferencia de mis 6,820 Hay casi 2,200 elementos que tienen un presupuesto o un budget de $ 0.00 USD que para nuestros estudios en particular hemos desechado de este Data Frame para poder centrarnos en los que sí tienen un significado.
Para graficar igual que nuestras Gráficas de Línea va a ocupar la librería matplotlib que se importa con la instrucción 'import matplotlib.pyplot as plt' y va a ocupar la instrucción '%matplotlib inline' para que las gráficas que se generen se hagan en esta libreta.
Le doy run y le digo vas a hacer una gráfica, un plot del tipo 'scatter' que scatter en inglés es como es el equivalente a dispersión.
va a hacer un Gráfico de Dispersión
¿Qué va a hacer en este gráfico de dispersión?
el eje horizontal va a ser el presupuesto y el eje vertical va a ser
¿Cuánto dinero nos produjo?
Entonces va a darle ejecutar.
En esta gráfica que se ve llena de puntos, cada uno de esos puntos representan una película diferente y nos dice más o menos cuánto se invirtió contra cuánto recuperó esta primera gráfica visualmente no nos da una información precisa, no se podra entenderla claramente pero, nos podría ser la idea de que las películas que poco invirtieron poco ganaron contra las películas que mucho invirtieron y mucho ganaron, como esta de acá.
Esa podría ser una pequeña primera conclusión que no necesariamente está bien.
Para eso necesitamos analizar más los datos para ver que lo que va a concluir sea correcto.
Bueno, les voy a presentar una ecuación que se llama 'La Ecuación del Retorno de Inversión' por sus siglas 'ROI' y nos dice: 'ROI = beneficio - inversión / inversión' El beneficio que me trajo menos la inversión que yo gasté entre la inversión.
Entonces el 'ROI' me va a decir el porcentaje (%) que gane, contra lo que invertí y le digo a mi Data Frame en la columna 'ROI' que es la que voy a agregar, va a ser igual al Data Frame de lo que me trajo de Beneficio menos (-) el Data Frame de lo que gasté entre (/) el Data Frame de lo que gasté y voy a centrar este estudio para filtrarlo de cierta manera entre los que tengan un ROI > 1.5 es decir, aquellos que tengan una recuperación de lo que invirtieron más el 50% como mínimo.
Aparte mi Data Frame también va a estar filtrado por solamente las películas que tengan 7 de score o más y las películas que tengan un poquito más de 0.5e8 en Dólares Le doy run, ya me filtro, ya ahí yo debo de tener un Data Frame un poco más entendible con las características de qué solo las películas que tuvieron un retorno de inversión de más de 1.5 se van a ver y un score de más de 7.
va a graficar este Data Frame con la función 'SCATTER' 
 

No hay comentarios:

Publicar un comentario

S4 Cierre

Cierre Semana 4 Muchos de los problemas actuales a los que se enfrenta un científico de datos involucran el manejo de grandes cantidades de ...