MAT281 - Laboratorio N°03: Manipulacion de Datos con Pandas I¶
Objetivos del laboratorio¶
- Cargar datos desde un archivo CSV a un
DataFrame. - Realizar exploracion basica: dimensiones, tipos, estadisticos y nulos.
- Seleccionar, crear y transformar columnas (incluyendo
apply). - Filtrar filas con condiciones numericas, de texto y combinadas.
- Detectar y tratar valores nulos y duplicados; manipular fechas.
Instrucciones¶
Lea con atencion cada problema antes de resolverlo. Reemplace cada celda que contiene # FIXME con su propia solucion y, cuando se solicite, responda las preguntas en celdas de texto.
Nota: Puede apoyarse en asistentes virtuales (ChatGPT, Gemini, Claude) o en el autocompletado de Colab, pero asegurese de entender cada linea de codigo que entregue.
In [ ]:
Copied!
import pandas as pd
import numpy as np
import pandas as pd
import numpy as np
Dataset: Netflix Titles¶
Trabajaremos con netflix_titles.csv, que contiene los titulos disponibles en
Netflix hasta 2021 (peliculas y series, con director, reparto, pais, año, etc.).
In [ ]:
Copied!
df = pd.read_csv("https://raw.githubusercontent.com/fralfaro/MAT281/main/docs/labs/data/netflix_titles.csv")
df.head()
df = pd.read_csv("https://raw.githubusercontent.com/fralfaro/MAT281/main/docs/labs/data/netflix_titles.csv")
df.head()
Problema 01 — Exploracion inicial¶
Tu tarea: responde con codigo:
- ¿Cuantas filas y columnas tiene el dataset?
- ¿Que tipo de dato tiene cada columna? (
dtypes) - Muestra los estadisticos descriptivos de las columnas numericas.
- ¿Cuantos valores nulos hay por columna? Ordenalos de mayor a menor.
In [ ]:
Copied!
# FIXME
# FIXME
Problema 02 — Exploracion por columna¶
Tu tarea:
- ¿Cuantas peliculas (
Movie) y cuantas series (TV Show) hay? (columnatype). - Lista los 10 paises (
country) con mas titulos. - ¿En que
release_yearse estrenaron mas titulos?
In [ ]:
Copied!
# FIXME
# FIXME
Problema 03 — Crear y transformar columnas¶
Tu tarea:
- La columna
durationmezcla"90 min"(peliculas) y"3 Seasons"(series). Crea una columna numericaduracion_numextrayendo solo el numero (usastr.extractoapply). - Crea una columna
decadaa partir derelease_year(por ejemplo, 1995 -> 1990). - Usando
apply, creatitulo_largoque seaTruesi eltitletiene mas de 20 caracteres.
In [ ]:
Copied!
# FIXME
# FIXME
Problema 04 — Filtrado de datos¶
Tu tarea: obten subconjuntos del DataFrame que cumplan:
- Peliculas (
type == "Movie") estrenadas despues de 2015. - Titulos cuyo
countrysea exactamente"Mexico"o"Argentina"(usaisin). - Titulos cuyo
titlecontenga la palabra"Love"(filtro de texto, sin distinguir mayusculas).
In [ ]:
Copied!
# FIXME
# FIXME
Problema 05 — Nulos, duplicados y fechas¶
Tu tarea:
- La columna
directortiene muchos nulos: rellenalos con"Desconocido". - Verifica si existen filas duplicadas (
duplicated) y eliminalas si las hay. - Convierte
date_addeda tipo fecha (pd.to_datetime) y crea una columnaanio_agregadocon el año en que se agrego el titulo a la plataforma. - Pregunta: ¿en que año se agregaron mas titulos a Netflix?
In [ ]:
Copied!
# FIXME
# FIXME
Respuesta (Problema 05): (escribe aqui)