¿Contar filas es contar ventas?
Averigua qué representa una fila del archivo y cuenta lo que la pregunta pide: tickets, no líneas de producto.
Curso gratis. Tu Maestro, una IA, .
La primera de las tres preguntas es la más sencilla y la que más números salva: ¿qué representa una fila? En el archivo de la ferretería, una fila no es una venta. Es un producto dentro de un ticket. Si alguien se lleva un martillo, clavos y guantes, ese ticket ocupa tres filas.
A eso se le llama la granularidad de una tabla: el nivel de detalle de cada fila. La misma información puede venir con una fila por ticket, una por producto dentro de un ticket o una por día y sucursal. Ninguna es mejor que otra. Lo que importa es que la cuenta que hagas coincida con lo que tu pregunta cuenta.
Calienta con una tabla de cinco filas. Antes de ejecutar, escribe qué crees que imprime:
Tres tickets: el primero lleva tres productos y los otros dos, uno cada uno.
Filas contra tickets
Ejemplo 1 de 2
import pandas as pdtabla = pd.DataFrame({ "ticket": ["T-1", "T-1", "T-1", "T-2", "T-3"], "producto": ["Martillo", "Clavos", "Guantes", "Pintura", "Guantes"],})print(len(tabla))print(tabla["ticket"].nunique())Adivinar está bien. Lo que escribas se queda en este navegador y te espera en tu curso.
Ejemplo 2 de 2, se abre cuando expliques este
Cómo saber qué es una fila
Casi ningún archivo lo dice en voz alta. Lo averiguas con tres preguntas que tardan un minuto:
- ¿Qué columna debería identificar cada cosa? En ventas, el número de ticket. En nómina, el número de empleado. En una clínica, el expediente.
- ¿Esa columna se repite? Si
len(data)ydata["ticket"].nunique()dan lo mismo, cada ticket ocupa una fila. Si las filas son más, hay tickets con varias filas. - ¿Qué distingue a dos filas del mismo ticket? Mira dos filas con el mismo número de ticket. Si cambian el producto y los campos de su línea, como cantidad e importe, una fila es un producto dentro de un ticket. Esa frase es la respuesta que buscas.
Para mirar las primeras filas, la línea es data.head(). Para comparar las dos cuentas:
data.head(8) # las primeras 8 filas, para mirarlaslen(data) # cuántas filasdata["ticket"].nunique() # cuántos tickets distintos¿Cuántas ventas hubo en Zapopan?
Ejemplo resuelto · 4 pasos
La IA contestó 89. Quieres saber si 89 son ventas. Intenta cada paso antes de abrirlo.
Piensa el siguiente paso por tu cuenta y luego ábrelo para comparar.
Inténtalo
El ejercicio ya cuenta filas y tickets del mes completo. Ejecútalo y compara: 312 filas contra 123 tickets. Luego haz lo mismo para Chapalita, la sucursal que atiende a muchos contratistas. Antes de ejecutar, adivina: ¿la diferencia entre filas y tickets será grande o chica en Chapalita? No sé por qué en Chapalita la diferencia es tan grande.
Tu turno
Ejecuta y compara las dos primeras líneas de la salida. Luego cuenta las filas y los tickets distintos de Chapalita. Terminas cuando ves los dos números de Chapalita y puedes decir con tus palabras por qué están tan lejos uno del otro.
Datos: ventas-marzo, 312 filas
| Fila | Quitar | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | |||||||||||
| 2 | |||||||||||
| 3 | |||||||||||
| 4 | |||||||||||
| 5 | |||||||||||
| 6 | |||||||||||
| 7 | |||||||||||
| 8 | |||||||||||
| 9 | |||||||||||
| 10 | |||||||||||
| 11 | |||||||||||
| 12 | |||||||||||
| 13 | |||||||||||
| 14 | |||||||||||
| 15 | |||||||||||
| 16 | |||||||||||
| 17 | |||||||||||
| 18 | |||||||||||
| 19 | |||||||||||
| 20 |
Enter guarda; Esc deshace; vacía es un valor faltante
Tab agrega sangría; Esc y Tab para salir
En Chapalita deberías ver 88 filas y 18 tickets: casi cinco productos por ticket. Si una IA te dijera "Chapalita tuvo 88 ventas", estaría contando líneas, y Chapalita quedaría casi empatada con Zapopan, la sucursal con más filas, cuando en tickets tiene 18 contra 30 de Zapopan y es de las que menos tickets tiene.
Ahora fíjate en Tlaquepaque: 22 filas y 22 tickets. Ahí contar filas da lo mismo que contar tickets, porque cada ticket de Tlaquepaque lleva un solo producto. Esa coincidencia es peligrosa: si revisas un número de Tlaquepaque, todo cuadra, y el error aparece hasta que alguien mira otra sucursal.
Comprueba lo que sabes, 1 de 2: En Tlaquepaque, contar filas y contar tickets da lo mismo: 22. ¿Qué te dice eso?
Comprueba lo que sabes, 2 de 2: Tu archivo de nómina tiene una fila por empleado por quincena. Te piden: "¿Cuántas personas trabajaron en marzo?". ¿Qué cuentas?