Kom igångKom igång gratis

Bygg en segmenteringsfunktion för A/B-test

I föregående lektion såg du att ditt personaliseringsexperiment är mycket statistiskt signifikant. När man kör experiment är det dock viktigt att undersöka hur nya funktioner påverkar specifika demografiska grupper. Ibland är funktioner som tilltalar en grupp mindre attraktiva för andra.

Eftersom du vill segmentera data flera gånger kommer du att bygga en funktion, ab_segmentation(), som analyserar effekten av dina A/B-tester på datasegment. Funktionen kan återanvändas varje gång du vill genomföra den här typen av analys.

Funktionen tar emot ett kolumnnamn och går igenom varje unikt värde i den kolumnen för att beräkna lyft och statistisk signifikans.

Den här övningen är en del av kursen

Analysera marknadsföringskampanjer med pandas

Visa kurs

Övningsinstruktioner

  • Bygg en for-slinga inuti funktionen ab_segmentation() som går igenom varje unikt värde i det kolumnnamn som användaren angett, segment.
  • Isolera de rader i marketing där marknadsföringskanalen är 'Email' och den angivna kolumnen segment är lika med subsegment.
  • Skriv ut resultaten från funktionerna lift() och stats.ttest_ind().

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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().astype(float)
      personalization = subscribers['personalization'].dropna().astype(float)

      print('lift:', ____) 
      print('t-statistic:', ____, '\n\n')
Redigera och kör kod