{}const=>[]async()letfn</>var
Desarrollo

Data Science en pocas palabras: aprendemos a analizar datos con ejemplos sencillos

Analicemos la ciencia de datos con ejemplos simples y claros: cómo calcular el cheque promedio, buscar cuellos de botella en el embudo y probar hipótesis sin fórmulas complejas. Todo de forma humana, con lógica, no con magia estadística.

К

Kodik

Autor

3 min de lectura

¿Por qué la ciencia de datos?

La ciencia de datos no es «magia de la IA», sino preguntas cuidadosas sobre los datos:

  • ¿Qué está pasando? - análisis descriptivo

  • ¿Por qué sucede esto? - diagnóstico

  • ¿Qué pasará después? - pronóstico

  • ¿Qué hacer? — recomendaciones

Ciclo básico: recopilar → limpiar → ver (EDA) → comprobar la hipótesis → modelar → explicar el resultado y tomar una decisión.

Regla n.º 1: el resultado debe conducir a la acción. Un número por el bien de un número es basura.

🔥 100.000+ estudiantes ya están con nosotros

¿Cansado de leer teoría?
¡Hora de programar!

Kodik — una app donde aprendes a programar con práctica. Mentor IA, lecciones interactivas, proyectos reales.

🤖 IA 24/7
🎓 Certificados
💰 Gratis
🚀 Empezar
Se unieron hoy

Miniguía: qué contar y cómo medir

Pregunta

Lo que consideramos

Herramienta

Tipo de métrica

¿Qué significa?

¿Cuánto gastan los clientes?

Recibo promedio (media), mediana

Pandas/SQL

Descriptiva

Punto de referencia de ingresos básicos

¿Cómo de «viva» está la demanda?

Conversión, frecuencia de compra

Grupos, cohortes

Descriptiva/diagnóstica

Comprensión del embudo

¿Funciona el banner?

Δ conversiones, prueba t/arranque

SciPy/bootstrapping

Estadísticas de información

Probabilidad de que el efecto no sea accidental

¿Qué influye en la respuesta?

Correlaciones/importancia de la función

corr(), regresión simple

Diagnóstico

Qué factores son realmente significativos

¿Cuánto venderemos mañana?

Pronóstico (lineal/árboles)

scikit-learn

Pronóstico

Optimizamos las compras/publicidad

Ejemplo 1. Cafetería y recibo promedio

Guion: el propietario quiere entender por qué los ingresos «dan saltos».

Datos: tabla orders (id, fecha, importe, método de pago).

Qué hacemos:

  1. Contamos cheque promedio y mediana.

  2. Estamos construyendo distribución de recibos.

  3. Vemos día de la semana — ¿Dónde están los días pico?

df['weekday'] = df['date'].dt.day_name()
avg_check = df['amount'].mean()
median_check = df['amount'].median()
by_weekday = df.groupby('weekday')['amount'].mean().sort_values(ascending=False)

Conclusiones: si el recibo promedio >> mediana, tienes una larga «cola» de pedidos caros. ¿Picos los viernes? Entonces, es mejor lanzar la promoción el jueves por la noche.

Ejemplo 2. Conversión de visualización a compra

Guion: tienda en línea: muchas visitas, pocas compras.

Datos: eventos view_product y purchase con user_id.

views = events.query('event=="view_product"').user_id.nunique()
carts = events.query('event=="add_to_cart"').user_id.nunique()
buys  = events.query('event=="purchase"').user_id.nunique()
conv_view_to_cart = carts / views
conv_cart_to_buy  = buys / carts

Conclusión: si hay una disminución en la etapa «cesta → compra», verifica la UX, los errores de formulario o el costo de envío.

Ejemplo 3. Prueba A/B rápida de un banner

from statsmodels.stats.proportion import proportions_ztest
count = np.array([buys_B, buys_A])
nobs  = np.array([visits_B, visits_A])
stat, p = proportions_ztest(count, nobs)

Conclusión: incluso con una diferencia de +0,8 p.p., se debe tener en cuenta el intervalo de confianza y el coste del tráfico.

Ejemplo 4. Pronóstico de ventas «para mañana»

X = pd.get_dummies(df[['day_index','weekday']], drop_first=True)
y = df['sales']
model.fit(X_train, y_train)
pred = model.predict(X_test)
mae = np.mean(np.abs(pred - y_test))

Conclusión: se necesita un pronóstico para reducir la incertidumbre, no para «adivinar con precisión».

Ejemplo 5. ¿Qué afecta realmente a la respuesta?

Guion: boletín de correo electrónico. ¿Por qué algunas cartas se abren y otras no?

Idea: comprobar las correlaciones y la regresión logística para evaluar la influencia de los atributos.

La limpieza de datos es la mitad del éxito

Problema

Cómo detectar

Qué hacer

Permisos

df.isna().mean()

Eliminar o reemplazar por la mediana

Emisiones

Boxplot, z-score

Restringir por reglas de negocio

Duplicados

df.duplicated().sum()

Borrar claves

Diferentes formatos de fecha

Errores de análisis

Usar to_datetime

Categorías incompletas

Porcentaje < 1%

Combinar en «Other»

En Codice ofrecemos módulos cortos en Python y análisis con tareas «como en la vida real»: carga de CSV, limpieza, embudos, mini prueba A/B y el primer modelo. Sin agua y con resultados comprensibles.

Y también tenemos un canal de telegram, donde discutimos ideas geniales, compartimos experiencias y analizamos juntos las tareas: aprender no solo es útil, sino también divertido.

🎯Deja de postergar

¿Te gustó el artículo?
¡Hora de practicar!

En Kodik no solo lees — escribes código de inmediato. Teoría + práctica = habilidades reales.

Práctica instantánea
🧠IA explica código
🏆Certificado

Sin registro • Sin tarjeta