Sobre el proyecto

Retentioneering es un kit de herramientas basado en Python y de código abierto diseñado para analítica reproducible y auditable sobre datos de clickstream y registros de eventos. Reemplaza scripts ad-hoc por primitivas analíticas probadas y flujos de trabajo reutilizables, ayudando a analistas, científicos de datos y agentes de IA a explorar trayectorias de usuario, descubrir segmentos conductuales, evaluar experimentos y cotejar resultados. Componentes principales: - **Eventstream**: un objeto respaldado por DuckDB que ingesta datos brutos de eventos desde DataFrames de pandas, archivos CSV/TSV/Parquet o exportaciones de bases de datos. Soporta filtrado, sesionamiento, colapso de eventos, creación de eventos sintéticos y otros procesadores encadenables, devolviendo siempre un nuevo flujo inmutable. - **Widgets interactivos**: construidos con anywidget, se renderizan directamente en Jupyter, Colab, VS Code, etc. Los widgets incluyen Transition Graph, Step Matrix, Step Sankey, Funnel, Segment Overview y Cluster Analysis, todos con un modo diff para comparar cohortes. - **Procesadores de datos**: métodos para filtrar eventos, dividir sesiones, agregar marcadores de churn, analizar URLs, extraer estados del ciclo de vida, muestreo y más, permitiendo análisis multirresolución desde interacciones de segundos hasta trayectorias de meses. - **Servidor MCP**: expone el Eventstream a Claude o cualquier cliente LLM compatible con MCP. Los agentes pueden ejecutar análisis, generar pestañas de informes y exportar informes HTML interactivos validados donde cada métrica enlaza con sus datos de origen. - **APIs headless**: cada widget tiene una contraparte solo de datos (p. ej., `transition_graph_data`, `funnel_data`) para consumo programático. La instalación es sencilla con Python 3.10+: ```bash pip install retentioneering ``` Un inicio rápido carga un CSV con tres columnas (user_id, event, timestamp), crea un `Eventstream` y llama a `stream.transition_graph()` para mostrar un gráfico interactivo. El kit incluye un conjunto de datos sintético de comercio electrónico para experimentación, y todas las visualizaciones pueden exportarse como informes HTML compartibles. Los datos brutos nunca salen del entorno local; la telemetría opcional puede desactivarse. Retentioneering 5.0 es una reescritura completa que reemplaza el anterior motor pandas por un backend DuckDB más rápido y widgets anywidget modernos. La documentación, ejemplos y una comunidad en Discord/Telegram están disponibles en https://retentioneering.com/docs. El proyecto tiene licencia Apache‐2.0, fomentando el uso libre, la modificación y la distribución comercial de la biblioteca base. Las contribuciones son bienvenidas mediante issues y pull requests en GitHub.