Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Challenge: Mapping the Lifecycle of a SpaceStream-udforsker | Avanceret Kohortesegmentering og Fastholdelsesmetrikker
Kohorteanalyse med Python
Sektion 2. Kapitel 3
single

single

Challenge: Mapping the Lifecycle of a SpaceStream-udforsker

Stryg for at vise menuen

Du skal nu beregne avancerede fastholdelsesmetrikker for SpaceStream, en intergalaktisk holovision-tjeneste. Som Lead Data Analyst skal du analysere en kohorte på 5 brugere over tre måneder og følge, hvem der forbliver loyale, og hvem der falder fra. Målet er at beregne tre centrale metrikker for hver måned: Fastholdelsesrate, Churn-rate og Overlevelsesrate.

Start med at undersøge det givne datasæt, hvor hver bruger er markeret som aktiv (1) eller inaktiv (0) for hver måned. Kolonnerne month_0, month_1 og month_2 repræsenterer aktivitet over tre på hinanden følgende måneder. Din løsning kræver, at du bruger pandas til at behandle datasættet og udtrække de nødvendige metrikker for hver måned.

1234567891011121314151617181920212223242526
import pandas as pd data = { "user_id": [1, 2, 3, 4, 5], "month_0": [1, 1, 1, 1, 1], # Everyone starts active "month_1": [1, 0, 1, 0, 1], # 3 users active "month_2": [1, 0, 0, 0, 0], # 1 user active } df = pd.DataFrame(data) # Calculating retention rate: fraction of original cohort active in each month cohort_size = len(df) retention_rate = [df[f"month_{i}"].sum() / cohort_size for i in range(3)] # Calculating churn rate: 1 - retention rate churn_rate = [1 - r for r in retention_rate] # Calculating survival rate: fraction of users still active in ALL months up to i survival_rate = [] for i in range(3): still_active = df[[f"month_{j}" for j in range(i + 1)]].all(axis=1).sum() survival_rate.append(still_active / cohort_size) print("retention_rate:", retention_rate) print("churn_rate:", churn_rate) print("survival_rate:", survival_rate)

Denne kode beregner de nødvendige metrikker for hver måned. Fastholdelsesraten måler, hvilken andel af den oprindelige kohorte der er aktive i en given måned. Churn-raten er blot én minus fastholdelsesraten og angiver andelen, der ikke længere er aktive. Overlevelsesraten viser brugere, der har været kontinuerligt aktive fra starten og frem til den aktuelle måned – hvilket kræver, at en bruger har en 1 i hver måned indtil nu.

Opgave

Swipe to start coding

Skriv en Python-funktion kaldet calculate_cohort_metrics(df), der tager en DataFrame med samme struktur som ovenfor og returnerer tre lister: retention_rate, churn_rate og survival_rate for hver måned. Din funktion skal:

  • Acceptere en DataFrame, hvor hver række er en bruger, og hver kolonne efter user_id er en måned (f.eks. month_0, month_1, ...).
  • Beregne retention rate for hver måned som andelen af cohort-brugere, der er aktive i den pågældende måned.
  • Beregne churn rate for hver måned som én minus retention rate.
  • Beregne survival rate for hver måned som andelen af brugere, der har været aktive i alle måneder op til og med den pågældende måned.
  • Returnere de tre lister i rækkefølgen: retention_rate, churn_rate, survival_rate.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 3
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

some-alt