Mensaje de Antonia Llancaqueo, cofundadora de Tienda Online Pewen
Con lo que encontraste me quedé preocupada: pedidos sin cantidad, fechas que parecen texto y clientes sin región. Antes de calcular ventas, deja los datos listos. Y cuéntame cuántos pedidos venían sin cantidad, para hablarlo con quien carga los datos.
Concepto
Cuatro herramientas para los problemas más comunes:
Vacíos. isna() marca las celdas vacías (en pandas se llaman NaN) y .sum() las cuenta:
pedidos["cantidad"].isna().sum()
Después se decide qué hacer: dropna(subset=["cantidad"]) quita esas filas, y fillna("Sin región") las rellena con un valor.
Duplicados. drop_duplicates() quita las filas idénticas a otra.
Tipos. Una columna con vacíos queda como decimal (4.0). astype(int) la pasa a entero, una vez que ya no tiene vacíos. Las fechas llegan como texto: pd.to_datetime las convierte en fechas de verdad, con las que se puede agrupar por mes.
import pandas as pd
pedidos = pd.read_csv("datos/pedidos.csv")
print(pedidos.dtypes)
print("Duplicados:", pedidos.duplicated().sum())Un cambio sobre una columna se guarda asignándolo: pedidos["fecha"] = pd.to_datetime(pedidos["fecha"]). Las operaciones sobre la tabla completa devuelven una tabla nueva, así que hay que guardarla: pedidos = pedidos.drop_duplicates().
> tarea Python
Guarda en nulos cuántos pedidos vienen sin cantidad. Después limpia pedidos: quita los duplicados y las filas sin cantidad, deja cantidad como entero y fecha como fecha. Por último, rellena las regiones vacías de clientes con «Sin región».
Primero intenta: las pistas aparecen después de 2 intentos con un resultado incorrecto (los errores de código no cuentan). Llevas 0.
> decisión
Hay 5 pedidos sin cantidad. ¿Por qué no rellenarlos con 1, que es la cantidad más común?
Cargando opciones…