Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Ingegneria delle Caratteristiche per l'Analisi delle Coorti | Strutturazione e Preparazione dei Dati di Coorte
Analisi delle Coorti con Python

Ingegneria delle Caratteristiche per l'Analisi delle Coorti

Scorri per mostrare il menu

La feature engineering è il processo di creazione di nuove variabili a partire dai dati grezzi per migliorare l'analisi, la modellazione o la segmentazione. Nell'analisi delle coorti, una feature engineering efficace consente di estrarre approfondimenti più dettagliati sul comportamento degli utenti nel tempo. Le feature tipiche includono la durata di vita dell'utente (per quanto tempo un utente è stato attivo), i conteggi di attività (quante volte un utente ha eseguito una specifica azione) e la recency (quanto recentemente un utente è stato attivo). Queste feature permettono di raggruppare gli utenti in modo più significativo, rivelando schemi di retention, engagement e churn. Attraverso la creazione di queste feature, è possibile andare oltre l'assegnazione di base alle coorti e costruire gruppi più ricchi e utili per l'analisi.

12345678910111213141516171819202122232425262728
import 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)

Le feature create nell'esempio di codice - durata di vita dell'utente, conteggi di attività e recency - sono strumenti potenti per la segmentazione e l'analisi delle coorti. Misurando per quanto tempo un utente rimane attivo, con quale frequenza interagisce e quanto recentemente ha effettuato un'attività, è possibile identificare differenze significative tra le coorti. Ad esempio, utenti con una lunga durata di vita e attività frequente possono appartenere a coorti altamente coinvolte, mentre quelli con valori elevati di recency potrebbero essere a rischio di abbandono. Queste feature ingegnerizzate permettono di andare oltre la semplice suddivisione temporale, consentendo una segmentazione multidimensionale che rivela pattern comportamentali più profondi e supporta strategie di business più mirate.

question mark

Quale delle seguenti opzioni descrive meglio lo scopo dell'ingegneria delle caratteristiche nell'analisi delle coorti?

Seleziona la risposta corretta

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 2

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Sezione 1. Capitolo 2
some-alt