Este repositorio contiene el Proyecto Final de Python, enfocado en el análisis de un conjunto de datos relacionado con ingresos y variables de marketing. El proyecto aplica técnicas de limpieza de datos, análisis exploratorio (EDA) y visualización, utilizando Python y librerías estándar de ciencia de datos.
El objetivo principal es extraer insights relevantes que permitan comprender la relación entre las estrategias de marketing y los ingresos obtenidos, apoyando la toma de decisiones basada en datos. Para esto vamos a entrenar dos modelos de regresión lineal: RIDGE Y LASSO.
- Preparar y limpiar un conjunto de datos para su análisis.
- Realizar un análisis exploratorio de datos (EDA).
- Analizar la relación entre variables de marketing e ingresos.
- Comunicar resultados mediante visualizaciones claras.
- Aplicar buenas prácticas de programación en Python.
-
MAE RMSE R2 - Ridge 0.2640 0.3741 0.8261
- Lasso 0.2463 0.3767 0.8236
- Menor MAE lo tiene: Lasso
- Menor RMSE lo tiene: Ridge
- Mayor R² lo tiene: Ridge
R² = 0.8261 (Ridge) / 0.8236 (Lasso)
- Buen poder predictivo: Ambos modelos explican aproximadamente el 82–83% de la variabilidad en los ingresos.
- Muy alto: En marketing digital, un R² > 0.8 se considera excelente.
- Conclusión: El modelo captura muy bien las relaciones entre las variables predictoras y los ingresos.
MAE = 0.2640 (Ridge) / 0.2463 (Lasso)
- Error medio: Las predicciones se desvían en promedio entre 0.24 y 0.26 unidades en la escala logarítmica.
- Muy bajo error: Indica alta precisión en las predicciones.
- Lasso tiene un MAE ligeramente menor → más preciso en promedio.
RMSE = 0.3741 (Ridge) / 0.3767 (Lasso)
- Manejo de valores atípicos: Ridge maneja mejor los valores extremos → más robusto ante outliers.
- Diferencia mínima: Solo 0.0026 entre modelos, prácticamente iguales.
- Ridge tiene el mayor R² y menor RMSE → mejor captura la variabilidad y es más estable frente a outliers.
- Lasso tiene el menor MAE → más preciso en promedio absoluto.
- Ambos modelos muestran desempeño sobresaliente, pero Ridge puede considerarse ligeramente más robusto para predecir ingresos de campañas de marketing.
Se confirma que es posible predecir con alta precisión los ingresos utilizando variables como duración, costo, ROI, impresiones y clics.
Con más del 82% de la variabilidad explicada, ambos modelos son herramientas valiosas para planificación y optimización de presupuestos de marketing.
- ✅ Entrenando best_model...
- 📊 Features utilizadas en el modelo: 53
- 📊 Features originales: 22
- 📊 Top 10 características más importantes:
-
feature importance_mean importance_std - 3 num__roi 0.748880 0.071368
- 1 num__costo_campania 0.700990 0.044610
- 6 log__impresiones 0.029001 0.008638
- 51 cat__roi_bin_Pérdida 0.020282 0.005439
- 50 cat__roi_bin_Baja Rentabilidad 0.010491 0.003936
- 44 cat__impresiones_bin_Muy Bajas 0.004223 0.002429
- 7 log__clics 0.004068 0.003084
- 52 cat__roi_bin_Rentable 0.004059 0.002513
- 39 cat__idioma_es 0.003485 0.001239
- 40 cat__idioma_pt 0.003480 0.001361
Se utilizó Permutation Importance con n_repeats=30 para estimar la relevancia de cada variable midiendo cuánto empeora el modelo al “romper” su información.
-
ROI (numérico)
importance_mean = 0.7489importance_std = 0.0714→ std/mean ≈ 0.095 (muy confiable)- Impacto: Si se pierde la información de ROI, la capacidad predictiva del modelo disminuye drásticamente.
- Reflexión: El retorno de inversión es el factor principal para explicar ingresos.
- Implicación: Optimizar campañas buscando un ROI alto es fundamental.
-
Costo de campaña (numérico)
importance_mean = 0.7010importance_std = 0.0446→ std/mean ≈ 0.064 (muy confiable)- Impacto: El costo en escala numérica contribuye significativamente al modelo.
- Reflexión: La inversión realizada está directamente ligada a los ingresos.
- Implicación: Ajustar presupuestos estratégicamente es clave para maximizar eficiencia.
-
Impresiones (log-transformada)
importance_mean = 0.0290importance_std = 0.0086→ std/mean ≈ 0.30 (confiable)- Impacto: El número de impresiones afecta el modelo de manera menor, pero aún relevante.
- Reflexión: Las campañas con más alcance contribuyen ligeramente a los ingresos.
- Implicación: Aumentar impresiones puede ser útil, pero no sustituye un buen ROI y control del costo.
| Feature | Importance Mean | Importance Std |
|---|---|---|
| num__roi | 0.748880 | 0.071368 |
| num__costo_campania | 0.700990 | 0.044610 |
| log__impresiones | 0.029001 | 0.008638 |
| cat__roi_bin_Pérdida | 0.020282 | 0.005439 |
| cat__roi_bin_Baja Rentabilidad | 0.010491 | 0.003936 |
| cat__impresiones_bin_Muy Bajas | 0.004223 | 0.002429 |
| log__clics | 0.004068 | 0.003084 |
| cat__roi_bin_Rentable | 0.004059 | 0.002513 |
| cat__idioma_es | 0.003485 | 0.001239 |
| cat__idioma_pt | 0.003480 | 0.001361 |
- Las variables categóricas como bins de ROI, impresiones e idioma tienen menor relevancia (
importance_mean < 0.05). - Esto indica que la eficiencia económica de la campaña pesa más que el canal o categoría específica.
- Las variables ROI y costo de campaña son los factores más determinantes en los ingresos, confirmando que rentabilidad e inversión son los principales impulsores del desempeño.
- Variables categóricas como canales, idioma o bins tienen menor influencia, sugiriendo que optimizar la eficiencia económica de la campaña es más importante que el canal en sí.
- Python 3
- Pandas – Análisis y manipulación de datos
- NumPy – Cálculo numérico
- Matplotlib / Seaborn – Visualización de datos
- Jupyter Notebook – Desarrollo y presentación del análisis
Final_Proyect_Python/
│
├── proyecto_ingresos_marketing_final-2.ipynb # Notebook con el análisis completo
├── proyecto_ingresos_marketing_final_2.py # Script Python del análisis
└── README.md # Documentación del proyecto
-
Carga de datos
Importación del dataset y revisión inicial de su estructura. -
Limpieza y preparación
Tratamiento de valores nulos, corrección de tipos de datos y depuración de inconsistencias. -
Análisis exploratorio (EDA)
Estadísticos descriptivos, análisis de distribuciones y estudio de correlaciones. -
Visualización
Gráficos para identificar patrones, tendencias y relaciones clave. -
Conclusiones
Interpretación de los resultados en el contexto de ingresos y marketing.
- Identificación de variables con mayor influencia en los ingresos.
- Evidencia de relaciones relevantes entre inversión en marketing y desempeño.
- Hallazgos útiles para análisis y decisiones estratégicas.
(Los detalles completos se encuentran documentados en el notebook.)
- Clonar el repositorio:
git clone https://github.com/leopoldozumba/Final_Proyect_Python.git- Acceder al directorio:
cd Final_Proyect_Python- Ejecutar el notebook:
jupyter notebook proyecto_ingresos_marketing_final-2.ipynbProyecto desarrollado para el Módulo de Python for Data Science.
- Leopoldo Zumba
Proyecto desarrollado con fines académicos y educativos.