Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Tecniche di Assegnazione dei Cohort | Strutturazione e Preparazione dei Dati di Coorte
Analisi delle Coorti con Python
Sezione 1. Capitolo 1
single

single

Tecniche di Assegnazione dei Cohort

Scorri per mostrare il menu

L'analisi delle coorti è una tecnica potente nell'analisi dei dati che consente di raggruppare gli utenti in base a caratteristiche o esperienze condivise all'interno di un intervallo di tempo definito. Il metodo più comune consiste nell'assegnare gli utenti a coorti in base alla data della loro prima transazione o interazione. Questo approccio permette di monitorare come si comportano diversi gruppi nel tempo, rivelando tendenze come la retention, l'engagement e l'abbandono che sarebbero nascoste nei dati aggregati.

L'assegnazione degli utenti alle coorti è un passaggio fondamentale nell'analisi delle coorti. Definendo regole chiare per l'assegnazione alle coorti - ad esempio raggruppando per mese o settimana del primo acquisto dell'utente - è possibile creare segmenti significativi per analisi più approfondite. Questo processo aiuta non solo a identificare cambiamenti nel comportamento degli utenti, ma anche a supportare decisioni aziendali più mirate, come la valutazione dell'impatto di modifiche al prodotto o di campagne di marketing su specifici gruppi di utenti.

Comprendere e implementare una corretta assegnazione alle coorti garantisce che l'analisi rifletta i reali percorsi degli utenti e fornisca insight utili. Il seguente esempio di codice mostra come assegnare gli utenti alle coorti utilizzando la data della loro prima transazione in Python con pandas.

12345678910111213141516171819
import pandas as pd # Sample transaction data data = { "user_id": [1, 2, 1, 3, 2, 4], "transaction_date": [ "2024-01-15", "2024-01-20", "2024-02-10", "2024-03-05", "2024-03-10", "2024-03-15" ], "amount": [100, 150, 200, 120, 80, 90] } df = pd.DataFrame(data) df["transaction_date"] = pd.to_datetime(df["transaction_date"]) # Assigning each user to a cohort based on their first transaction month df["cohort_month"] = df.groupby("user_id")["transaction_date"].transform("min").dt.to_period("M") print(df[["user_id", "transaction_date", "cohort_month"]])

La logica alla base dell'assegnazione alle coorti consiste nell'identificare un evento o una caratteristica univoca - più spesso la data della prima transazione dell'utente - e utilizzarla per definire la coorte di ciascun utente. Nell'esempio di codice sopra, si utilizza pandas per raggruppare i dati per user_id e trovare la transaction_date minima per ogni utente. Questa data viene poi convertita in un periodo mensile, creando un cohort_month che rappresenta la coorte dell'utente.

Durante l'implementazione dell'assegnazione alle coorti, è importante considerare casi particolari come utenti con più transazioni nello stesso giorno, date di transazione mancanti o utenti che possono rientrare nel sistema dopo una lunga assenza. È buona pratica assicurarsi che la logica di assegnazione alle coorti sia robusta rispetto a queste situazioni, gestendo i valori mancanti e verificando che ogni utente sia assegnato esattamente a una coorte in base alla sua reale prima interazione.

Seguire questi principi aiuta a mantenere l'integrità delle coorti, garantendo che le analisi successive riflettano accuratamente il comportamento degli utenti e supportino decisioni aziendali solide.

Compito

Scorri per iniziare a programmare

Ti viene fornito un DataFrame df con le colonne user_id e signup_date che rappresentano le iscrizioni degli utenti. Completa i seguenti passaggi:

  • Converti la colonna signup_date in formato datetime.
  • Per ogni utente, identifica la sua prima signup_date.
  • Crea una nuova colonna cohort_week che contenga il periodo settimanale (YYYY-MM-DD con frequenza settimanale) della prima data di iscrizione di ciascun utente, utilizzando la funzionalità dei periodi di pandas con frequenza 'W'.
  • Stampa il DataFrame risultante, che deve includere la nuova colonna cohort_week.

Non modificare nessun'altra colonna o la struttura del DataFrame, ad eccezione dell'aggiunta della colonna richiesta cohort_week.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 1
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

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

some-alt