CommencerCommencer gratuitement

Créer une fonction d’A/B test avec segmentation

Dans la leçon précédente, vous avez observé que votre expérimentation de personnalisation est hautement significative sur le plan statistique. Cependant, lorsque vous menez des expériences, il est important de vérifier comment les nouvelles fonctionnalités affectent des segments démographiques spécifiques. Parfois, des fonctionnalités très attrayantes pour un groupe le sont moins pour d’autres.

Comme vous souhaitez segmenter les données à plusieurs reprises, vous allez créer une fonction ab_segmentation() qui analyse l’impact de vos A/B tests sur des segments de données et que vous pourrez réutiliser chaque fois que vous souhaitez effectuer ce type d’analyse.

Votre fonction prendra en entrée un nom de colonne et parcourra chaque valeur unique de cette colonne pour calculer le lift et la significativité statistique.

Cet exercice fait partie du cours

Analyzing Marketing Campaigns with pandas

Afficher le cours

Instructions

  • Créez une boucle for dans la fonction ab_segmentation() qui parcourt chaque valeur unique de la colonne fournie par l’utilisateur, segment.
  • Isolez les lignes de marketing où le canal marketing est 'Email' et où la colonne saisie par l’utilisateur segment est égale à subsegment.
  • Affichez les résultats des fonctions lift() et stats.ttest_ind().

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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')
Modifier et exécuter le code