Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Retention- ja Churn-metriikoiden Laskeminen | Edistynyt kohorttien segmentointi ja säilyttämismetriikat
Kohorttianalyysi Pythonilla

Retention- ja Churn-metriikoiden Laskeminen

Pyyhkäise näyttääksesi valikon

Pysyvyyden ja poistuman mittarit ovat keskeisiä työkaluja kohorttianalyysissä, joiden avulla mitataan, kuinka hyvin tuote säilyttää käyttäjänsä ajan myötä ja missä vaiheessa käyttäjiä menetetään. Pysyvyyden aste ilmaisee prosenttiosuuden käyttäjistä kohortissa, jotka pysyvät aktiivisina tietyn ajanjakson jälkeen. Poistuma-aste on tämän vastakohta, eli se näyttää prosenttiosuuden käyttäjistä, jotka ovat lopettaneet sitoutumisen. Selviytymisaste seuraa todennäköisyyttä, että käyttäjä pysyy aktiivisena kuhunkin ajanjaksoon asti, tarjoten näkymän käyttäjän pitkäikäisyyteen.

Kaavat:

  • Pysyvyyden aste (ajanjaksolla n):
    Retention Rate = (Number of users active in period n) / (Number of users in cohort at period 0);
  • Poistuma-aste (ajanjaksolla n):
    Churn Rate = 1 - Retention Rate (at period n);
  • Selviytymisaste (ajanjaksolla n):
    Survival Rate = (Number of users still active at period n) / (Number of users in cohort at period 0).

Näitä mittareita havainnollistetaan usein pysyvyys- tai selviytymiskäyrillä, joiden avulla voidaan nopeasti havaita esimerkiksi jyrkät pudotukset tai vakaat jaksot. Seuraamalla näitä mittareita useissa kohorteissa ja ajanjaksoissa voidaan tunnistaa onnistuneita sitouttamisstrategioita sekä kehityskohteita.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
import pandas as pd import numpy as np import matplotlib.pyplot as plt # Example cohort data: each row is a user, columns are activity in each month (1 = active, 0 = inactive) data = { "user_id": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], "cohort_month": ["2023-01"] * 5 + ["2023-02"] * 5, "month_0": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1], # All users active at signup "month_1": [1, 0, 1, 1, 0, 1, 1, 0, 1, 1], "month_2": [1, 0, 0, 1, 0, 1, 0, 0, 1, 0], "month_3": [0, 0, 0, 1, 0, 1, 0, 0, 0, 0], } df = pd.DataFrame(data) # Calculating retention, churn, and survival rates for each cohort results = [] for cohort, group in df.groupby("cohort_month"): cohort_size = len(group) retention = [] churn = [] survival = [] users_remaining = cohort_size for month in ["month_0", "month_1", "month_2", "month_3"]: active = group[month].sum() retention_rate = active / cohort_size retention.append(retention_rate) churn.append(1 - retention_rate) survival.append(users_remaining / cohort_size) users_remaining = active # Update for next period results.append({ "cohort_month": cohort, "retention": retention, "churn": churn, "survival": survival, }) # Converting results to DataFrame for plotting metrics_df = pd.DataFrame(results) months = ["month_0", "month_1", "month_2", "month_3"] # Plot retention curves plt.figure(figsize=(10, 5)) for idx, row in metrics_df.iterrows(): plt.plot(months, row["retention"], marker="o", label=f"Cohort {row['cohort_month']}") plt.title("Cohort Retention Curves") plt.xlabel("Months Since Signup") plt.ylabel("Retention Rate") plt.legend() plt.show() # Plot survival curves plt.figure(figsize=(10, 5)) for idx, row in metrics_df.iterrows(): plt.plot(months, row["survival"], marker="o", label=f"Cohort {row['cohort_month']}") plt.title("Cohort Survival Curves") plt.xlabel("Months Since Signup") plt.ylabel("Survival Rate") plt.legend() plt.show() # Printing calculated metrics print(metrics_df[["cohort_month", "retention", "churn", "survival"]])

Tämä koodi havainnollistaa, kuinka lasketaan ja visualisoidaan pysyvyyden, poistuman ja selviytymisen asteet käyttäjäkohorteille käyttäen pandas- ja matplotlib-kirjastoja Pythonissa.

Tarkoituksena on analysoida, miten käyttäjäryhmät (kohortit) käyttäytyvät ajan myötä, keskittyen heidän sitoutumiseensa ja pitkäikäisyyteensä tuotteen parissa.

Tietorakenne:

  • Data on järjestetty DataFrameen, jossa jokainen rivi edustaa käyttäjää;
  • Sarakkeet sisältävät yksilöllisen käyttäjätunnuksen, kohorttikuukauden (milloin käyttäjä liittyi) sekä binääriset aktiivisuusindikaattorit jokaiselle kuukaudelle (1 = aktiivinen, 0 = passiivinen).

Laskentalogiikka:
Jokaiselle kohortille koodi:

  1. Laskee pysyvyyden asteen jokaiselle kuukaudelle vertaamalla aktiivisten käyttäjien määrää alkuperäiseen kohorttikokoon;
  2. Laskee poistuma-asteen pysyvyyden vastakohtana (1 - pysyvyyden aste);
  3. Seuraa selviytymisastetta, joka osoittaa todennäköisyyden, että käyttäjä pysyy aktiivisena kuhunkin ajanjaksoon asti, päivittäen jäljellä olevien käyttäjien määrän jokaisen kuukauden jälkeen.

Visualisointi:

  • Pysyvyys- ja selviytymiskäyrät piirretään jokaiselle kohortille matplotlibilla;
  • Näiden kuvaajien avulla voidaan visuaalisesti vertailla, kuinka nopeasti käyttäjät poistuvat (poistuma) tai pysyvät sitoutuneina (pysyvyys/selviytyminen) eri kohorteissa ja ajanjaksoissa, paljastaen trendejä ja käyttäjien sitoutumisen malleja.

Pysyvyys- ja poistumismittareiden tulkinta on olennaista tietoon perustuvien liiketoimintapäätösten tekemisessä. Korkeat pysyvyysasteet osoittavat, että käyttäjät kokevat tuotteessa jatkuvaa arvoa, mikä viittaa vahvaan sitoutumiseen ja hyvään tuote-markkina-sopivuuteen. Vastaavasti korkeat poistumisasteet voivat viitata ongelmiin, kuten täyttämättömiin käyttäjätarpeisiin, heikkoon käyttöönottoon tai kilpailupaineeseen. Selviytymiskäyrät auttavat havainnollistamaan, kuinka nopeasti kohortit pienenevät – jyrkät laskut voivat paljastaa, milloin käyttäjät yleensä menettävät kiinnostuksensa.

Seuraamalla näitä mittareita säännöllisesti voidaan tunnistaa trendejä ajan myötä ja eri kohorttien välillä. Esimerkiksi, jos uuden ominaisuuden julkaisu osuu yhteen kasvaneen pysyvyyden kanssa, siihen suuntaan voi olla kannattavaa panostaa lisää. Toisaalta, jos poistuma kasvaa tietyn päivityksen jälkeen, se voi viitata tuotteen parantamisen tai lisätuen tarpeeseen. Lopulta nämä mittarit mahdollistavat hypoteesien testaamisen, käyttäjäpolkujen optimoinnin ja resurssien tehokkaan kohdentamisen.

question mark

Mikä seuraavista väittämistä pysyvyys- ja poistumismittareista kohorttianalyysissä on oikein?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 2

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 2. Luku 2
some-alt