LoslegenKostenlos loslegen

Eine segmentierende A/B-Test-Funktion bauen

In der vorherigen Lektion hast du gesehen, dass dein Personalisierungs-Experiment statistisch hochsignifikant ist. Beim Durchführen von Experimenten ist es jedoch wichtig zu prüfen, wie neue Features bestimmte Zielgruppen beeinflussen. Manchmal sind Features, die eine Gruppe stark ansprechen, für andere weniger attraktiv.

Da du unsere Daten mehrfach segmentieren möchtest, wirst du eine Funktion ab_segmentation() bauen, die die Auswirkungen deiner A/B-Tests auf Datensegmente analysiert und die du jedes Mal wiederverwenden kannst, wenn du diese Art Analyse durchführen willst.

Deine Funktion nimmt einen Spaltennamen entgegen und iteriert durch jeden eindeutigen Wert in dieser Spalte, um Lift und statistische Signifikanz zu berechnen.

Diese Übung ist Teil des Kurses

Marketingkampagnen mit pandas analysieren

Kurs anzeigen

Anleitung zur Übung

  • Baue eine for-Schleife in unsere Funktion ab_segmentation() ein, die jeden eindeutigen Wert in der vom Nutzer eingegebenen Spalte segment durchläuft.
  • Isoliere die Zeilen in marketing, in denen der Marketingkanal 'Email' ist und die vom Nutzer eingegebene Spalte segment gleich subsegment ist.
  • Gib die Ergebnisse der Funktionen lift() und stats.ttest_ind() aus.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

def ab_segmentation(segment):
  # Build a for loop for each subsegment in marketing
  for subsegment in ____:
      print(subsegment)
      
      # Limit marketing to email and subsegment
      email = marketing[(marketing['marketing_channel'] == ____) & (marketing[segment] == ____)]

      subscribers = email.groupby(['user_id', 'variant'])['converted'].max()
      subscribers = pd.DataFrame(subscribers.unstack(level=1)) 
      control = subscribers['control'].dropna()
      personalization = subscribers['personalization'].dropna()

      print('lift:', ____) 
      print('t-statistic:', ____, '\n\n')
Code bearbeiten und ausführen