DÍA 01Análisis de pagos con pandas · Python para Análisis de Datos y Estadística

Carga un fixture sintético con columnas de pagos Sakila, revisa sus filas y confirma su forma y tipos.

Día 1 15 minInicial

Sakila: pagos de clientes (datos sintéticos de práctica)

Ocho filas totalmente sintéticas con seis columnas de un JOIN payment/customer; grano: pago; clave: payment_id. Sin nombres ni datos personales.

Leer un CSV con pandas

Objetivos

Al terminar podrás cargar el archivo de práctica y hacer una inspección inicial antes de calcular métricas.

Concepto

CSV significa comma-separated values (valores separados por comas): un archivo de texto que organiza datos en filas y columnas usando separadores. Aquí usamos un fixture, un archivo pequeño preparado para practicar con valores sintéticos; no es una descarga de registros reales de Sakila. pandas.read_csv lo lee y crea un DataFrame, la tabla de trabajo de pandas, que permite seleccionar, revisar y transformar esas filas y columnas.

Descarga el fixture sintético de pagos con estructura Sakila, colócalo junto a tu notebook y revisa la documentación del dataset. Instala pandas con python -m pip install pandas si todavía no está disponible.

Ejemplo

Ejecuta desde la carpeta donde guardaste el CSV:

import pandas as pd
 
payments = pd.read_csv(
    "customer-payments-fixture.csv",
    parse_dates=["payment_date"],
)
 
print(payments.head(3))
print(payments.shape)
print(payments.dtypes)

shape devuelve (filas, columnas). En este fixture esperamos 8 filas y 6 columnas. payment_id distingue las filas; customer_id se repite porque una persona puede realizar varios pagos.

Nota

Importante: todas las filas y los identificadores de este CSV son sintéticos; no se exportaron de Sakila ni se pueden usar para consultar sus registros. El archivo solo imita la forma de columnas que se pueden obtener de la base oficial.

Práctica guiada

  1. Cambia head(3) por head() y observa cuántas filas aparecen.
  2. Imprime solo payments["amount"].head().
  3. Compara el número de filas con la cantidad de identificadores distintos: payments["payment_id"].nunique().

Reto

Imprime las columnas del DataFrame y comprueba si cada payment_id aparece una sola vez. Explica por qué customer_id sí puede repetirse.

Quiz

¿Qué describe mejor una fila de este CSV?

  • A. Un cliente único.
  • B. Un pago.
  • C. Una tienda.

Respuesta: B. La consulta de origen produce una fila por payment_id.

Comprobación

Antes de filtrar, confirma que amount tiene un tipo numérico y payment_date se cargó como fecha. La siguiente lección selecciona pagos usando una condición.

TU PROGRESO

Cargando estado…