Ingeniería de Características para el Análisis de Cohortes
Desliza para mostrar el menú
La ingeniería de características es el proceso de crear nuevas variables a partir de datos en bruto para mejorar el análisis, la modelización o la segmentación. En el análisis de cohortes, una ingeniería de características eficaz permite extraer conocimientos más profundos sobre el comportamiento de los usuarios a lo largo del tiempo. Las características típicas incluyen vida útil del usuario (cuánto tiempo ha estado activo un usuario), conteos de actividad (cuántas veces un usuario ha realizado una acción específica) y recencia (cuán recientemente un usuario estuvo activo). Estas características permiten agrupar a los usuarios de manera más significativa, revelando patrones en la retención, el compromiso y la deserción. Al crear este tipo de características, es posible ir más allá de la asignación básica de cohortes y construir cohortes más ricas y accionables.
12345678910111213141516171819202122232425262728import pandas as pd # Sample user activity data data = { "user_id": [1, 1, 1, 2, 2, 3, 3, 3, 3], "activity_date": [ "2024-01-01", "2024-01-10", "2024-02-01", "2024-01-05", "2024-02-20", "2024-01-03", "2024-01-10", "2024-01-20", "2024-03-01" ] } df = pd.DataFrame(data) df["activity_date"] = pd.to_datetime(df["activity_date"]) # Calculate user lifetime (days between first and last activity) user_lifetime = df.groupby("user_id")["activity_date"].agg(["min", "max"]) user_lifetime["user_lifetime_days"] = (user_lifetime["max"] - user_lifetime["min"]).dt.days # Calculate activity count per user activity_counts = df.groupby("user_id").size().rename("activity_count") # Calculate recency (days since last activity, assuming analysis date is 2024-03-15) analysis_date = pd.to_datetime("2024-03-15") recency = df.groupby("user_id")["activity_date"].max().apply(lambda x: (analysis_date - x).days).rename("recency_days") # Combine features into a single DataFrame features = pd.concat([user_lifetime["user_lifetime_days"], activity_counts, recency], axis=1) print(features)
Las características creadas en el ejemplo de código —vida útil del usuario, conteos de actividad y recencia— son herramientas poderosas para la segmentación y el análisis de cohortes. Al medir cuánto tiempo permanece activo un usuario, con qué frecuencia interactúa y cuán reciente fue su última interacción, es posible identificar diferencias significativas entre cohortes. Por ejemplo, los usuarios con una vida útil larga y actividad frecuente pueden pertenecer a cohortes altamente comprometidas, mientras que aquellos con valores altos de recencia podrían estar en riesgo de abandono. Estas características diseñadas permiten ir más allá de la agrupación simple basada en el tiempo, posibilitando una segmentación multidimensional que revela patrones de comportamiento más profundos y respalda estrategias empresariales más enfocadas.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla