Skip to content

leopoldozumba/Final_Proyect_Python

Repository files navigation

Proyecto Final de Python – Predicción de Ingresos en Campañas de Marketing

📌 Descripción del Proyecto

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.


🎯 Objetivos

  • 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.

📊 Resultados de las métricas:

  •      MAE    RMSE      R2
    
  • Ridge 0.2640 0.3741 0.8261
  • Lasso 0.2463 0.3767 0.8236

✅ Conclusión:

  • Menor MAE lo tiene: Lasso
  • Menor RMSE lo tiene: Ridge
  • Mayor R² lo tiene: Ridge

📊 Interpretación de resultados

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.

Conclusión final de los Modelos:

  • Ridge tiene el mayor 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.


Importancia de Características (Permutation Importance)

  • ✅ 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

Reflexión sobre variables que más impactan en ingresos

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.

Top 3 variables más influyentes

  1. ROI (numérico)

    • importance_mean = 0.7489
    • importance_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.
  2. Costo de campaña (numérico)

    • importance_mean = 0.7010
    • importance_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.
  3. Impresiones (log-transformada)

    • importance_mean = 0.0290
    • importance_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.

Observaciones adicionales del Top 10

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.

Conclusión General

  • 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í.

🛠️ Tecnologías y librerías utilizadas

  • 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

🗂️ Estructura del repositorio

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

📊 Metodología

  1. Carga de datos
    Importación del dataset y revisión inicial de su estructura.

  2. Limpieza y preparación
    Tratamiento de valores nulos, corrección de tipos de datos y depuración de inconsistencias.

  3. Análisis exploratorio (EDA)
    Estadísticos descriptivos, análisis de distribuciones y estudio de correlaciones.

  4. Visualización
    Gráficos para identificar patrones, tendencias y relaciones clave.

  5. Conclusiones
    Interpretación de los resultados en el contexto de ingresos y marketing.


📈 Resultados principales

  • 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.)


▶️ Ejecución del proyecto

  1. Clonar el repositorio:
git clone https://github.com/leopoldozumba/Final_Proyect_Python.git
  1. Acceder al directorio:
cd Final_Proyect_Python
  1. Ejecutar el notebook:
jupyter notebook proyecto_ingresos_marketing_final-2.ipynb

👤 Autor

Proyecto desarrollado para el Módulo de Python for Data Science.

  • Leopoldo Zumba

📄 Licencia

Proyecto desarrollado con fines académicos y educativos.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors