Skip to content

Baltazardv/analisis-funciones-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

🔧 Análisis Avanzado de Datos con Funciones en Python

Python Jupyter Status

🎯 Problema de Negocio

Store 1 requiere herramientas reutilizables y escalables para procesar datos de usuarios de manera sistemática. El proyecto desarrolla funciones personalizadas en Python para automatizar la limpieza de datos, segmentación de clientes y cálculo de métricas financieras, facilitando análisis recurrentes y toma de decisiones basada en datos.

📊 Dataset

  • Registros: 10 usuarios
  • Variables principales: user_id, user_name, user_age, fav_categories, total_spendings
  • Fuente: Datos internos de Store 1
  • Estructura: Lista anidada con sublistas por usuario

Campos del dataset:

  • user_id: Identificador único del usuario
  • user_name: Nombre y apellido (requiere normalización)
  • user_age: Edad (conversión float → int)
  • fav_categories: Lista de categorías compradas (requiere normalización a minúsculas)
  • total_spendings: Lista de gastos por categoría (integers)

🛠️ Stack Tecnológico

  • Python 3.9+: Lenguaje de programación
  • Funciones personalizadas: clean_user(), count_by_category(), get_client_by_cat()
  • Estructuras de control: for, while, if-elif-else
  • Manipulación de listas: Listas anidadas, comprensión de listas
  • Módulo random: randint() para simulaciones
  • Jupyter Notebook: Documentación y ejecución interactiva

📈 Pasos Clave del Proyecto

  1. Desarrollo de Funciones de Limpieza: Creación de clean_user() para normalización de nombres, edades y categorías
  2. Normalización Masiva: Aplicación de transformaciones a todos los usuarios del dataset
  3. Cálculo de Métricas Financieras: Ingresos totales y gasto promedio por usuario
  4. Segmentación de Clientes: Filtrado por edad, gasto y categorías de compra
  5. Funciones de Análisis Avanzado: Conteo y filtrado por categoría con cálculo de gasto total
  6. Simulación de Programa de Lealtad: Uso de while loop con valores aleatorios

✅ Características y Funcionalidades

Funciones Reutilizables: Código modular para aplicar a futuros datasets
Limpieza Automatizada: Normalización de nombres, edades y categorías en un solo paso
Segmentación Dinámica: Filtros por edad, gasto y categoría de producto
Métricas Financieras: Cálculo de ingresos totales y gasto por usuario
Análisis por Categoría: Identificación de compradores por tipo de producto
Simulaciones: Modelado de comportamiento de compra con random

📊 Resultados del Análisis

📈 Métricas Generales

  • Ingresos Totales de la Empresa: $9,189
  • Número Total de Usuarios: 10
  • Gasto Promedio por Usuario: $918.90
  • Rango de Edad: 22 a 41 años
  • Edad Promedio: 30.70 años
  • Gasto Mínimo: $678 (John Doe)
  • Gasto Máximo: $1,280 (Mike Reed)
  • Mediana de Gasto: $882

👥 Segmentación de Clientes

Por Rango de Edad:

  • Menores de 30 años: 5 usuarios (50%)
    • Kate Morgan (24), Samantha Smith (29), Emily Brown (26), Jose Martinez (22), James Lee (28)
  • 30-40 años: 4 usuarios (40%)
  • Mayores de 40 años: 1 usuario (10%)

Clientes de Alto Valor (Jóvenes):

  • Criterio: <30 años con gasto >$1,000
  • Total: 2 usuarios (40% del segmento joven)
    • Samantha Smith: $1,063
    • James Lee: $1,067

💰 Top 5 Usuarios por Gasto Total

  1. Mike Reed: $1,280 - 32 años - 3 categorías
  2. James Lee: $1,067 - 28 años - 3 categorías
  3. Samantha Smith: $1,063 - 29 años - 3 categorías
  4. Emily Brown: $951 - 26 años - 3 categorías
  5. Jose Martinez: $917 - 22 años - 3 categorías

🛍️ Análisis por Categoría de Producto

Penetración por Categoría:

  1. ELECTRONICS: 5 usuarios (50%) - Gasto promedio: $632.00
  2. CLOTHES: 5 usuarios (50%)
  3. HOME: 5 usuarios (50%) - Gasto promedio: $309.20
  4. BOOKS: 4 usuarios (40%)
  5. BEAUTY: 4 usuarios (40%)
  6. SPORT: 3 usuarios (30%)
  7. FOOD: 3 usuarios (30%)

Categorías Más Rentables (por ingresos totales):

  1. ELECTRONICS: $3,160 (34.4% del total)
  2. CLOTHES: $1,865 (20.3% del total)
  3. HOME: $1,546 (16.8% del total)

Detalle de Compradores de HOME:

  • John Doe (37): $678
  • David White (41): $806
  • Emily Brown (26): $951
  • Jose Martinez (22): $917
  • Lisa Wilson (35): $847

Detalle de Compradores de CLOTHES:

  • Kate Morgan (24), Samantha Smith (29), Maria Garcia (33), Lisa Wilson (35), James Lee (28)

📊 Métricas de Comportamiento

Diversificación de Compras:

  • Promedio de categorías por usuario: 2.9
  • Usuario con más categorías: Mike Reed (3 categorías)
  • Usuario con menos categorías: Kate Morgan (2 categorías)

🎲 Simulación de Programa de Lealtad

Resultados de la simulación:

  • Monto inicial: $1,280
  • Objetivo para status leal: $1,500
  • Compras adicionales necesarias: 5 compras
  • Monto final alcanzado: $1,542
  • Status: ✅ Cliente califica para programa de lealtad

💡 Insights de Negocio y Recomendaciones

  1. 📱 Oportunidad en Segmento Joven: 50% de usuarios son menores de 30 años, incluyendo 2 clientes de alto valor (James Lee, Samantha Smith). Acción: Enfocar campañas de redes sociales en este grupo demográfico.

  2. 💻 Dominio de Electronics: La categoría genera 34.4% de ingresos totales ($3,160) con gasto promedio de $632 por usuario. Acción: Mantener stock y variedad en esta línea como prioridad estratégica.

  3. 🏠 Cross-selling Home & Electronics: Fuerte superposición entre compradores de ambas categorías (5 usuarios en común). Acción: Crear bundles combinando productos de hogar y electrónica.

  4. 🎯 Optimización del Programa de Lealtad: La simulación muestra que se requieren solo 5 compras medianas ($30-$80) para alcanzar el umbral de $1,500. Acción: Considerar ajustar el umbral a $2,000 o crear niveles intermedios para incentivar mayor gasto.

  5. 📈 Potencial de Upselling: Con mediana de $882 y máximo de $1,280, existe oportunidad de elevar el gasto de usuarios promedio. Acción: Implementar recomendaciones personalizadas basadas en categorías ya compradas.

🔍 Funciones Desarrolladas

1. clean_user(user_info, name_index, age_index, category_index)

# Limpia y normaliza datos completos de usuario
# Entrada: Lista con datos crudos
# Salida: Lista con datos estandarizados

2. count_by_category(user_list, id_index, name_index, category_index, filter_category)

# Cuenta usuarios que compraron en categoría específica
# Retorna: Número entero con cantidad de usuarios

3. get_client_by_cat(user_list, ..., filter_category)

# Filtra usuarios por categoría y calcula gasto total
# Retorna: Lista con [ID, nombre, edad, gasto_total]

🚀 Cómo Replicar el Proyecto

Clonar repositorio

git clone https://github.com/Baltazardv/analisis-funciones-python.git
cd analisis-funciones-python

Ejecutar el notebook

# Opción 1: Jupyter Notebook
jupyter notebook proyecto_2_analisis_funciones.ipynb

# Opción 2: JupyterLab
jupyter lab proyecto_2_analisis_funciones.ipynb

Estructura de Archivos

analisis-funciones-python/
├── README.md
├── proyecto_2_analisis_funciones.ipynb
└── reporte_analisis.md

🎯 Próximos Pasos

Este proyecto establece fundamentos para:

  1. Automatización ETL: Pipelines de limpieza para datasets más grandes
  2. Dashboard Interactivo: Visualización de segmentos y métricas con Streamlit/Plotly
  3. Modelos Predictivos: Predicción de comportamiento de compra y churn
  4. API de Funciones: Servicio web para análisis on-demand
  5. Base de Datos: Migración de listas a SQL para queries más complejas

💡 Habilidades Demostradas

  • Programación funcional en Python
  • Limpieza y transformación de datos estructurados
  • Segmentación de clientes con múltiples criterios
  • Análisis financiero automatizado
  • Desarrollo de código reutilizable y modular
  • Documentación técnica con docstrings
  • Pensamiento algorítmico con estructuras de control

📚 Proyecto desarrollado como parte del Bootcamp de Data Analytics en TripleTen

👨‍💻 Autor: Baltazar Dimayuga
📧 Contacto: baltazardv13@gmail.com
💼 LinkedIn: linkedin.com/in/baltazar-dimayuga
🐙 GitHub: github.com/Baltazardv

About

Desarrollo de funciones reutilizables en Python para limpieza de datos, segmentación de clientes y cálculo de métricas financieras. Análisis de $9,189 en ingresos con segmentación por edad y categoría de producto.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors