開始使用免費開始

建立可分群的 A/B 測試函式

在前一個單元中,你觀察到個人化實驗具有很高的統計顯著性。然而,在執行實驗時,檢查新功能對特定族群的影響也很重要。有時,對某一群體非常有吸引力的功能,對其他人可能就沒那麼吸引人。

由於你想多次對資料進行分群分析,你將建立一個 ab_segmentation() 函式,來分析 A/B 測試在不同資料分群上的影響。之後每次要做這類分析時都能重複使用。

你的函式會接收一個欄位名稱,並逐一走訪該欄位中的每個不重複值,計算 lift 與統計顯著性。

本練習屬於課程

使用 pandas 分析行銷活動

檢視課程

練習說明

  • ab_segmentation() 函式內建立一個 for 迴圈,走訪使用者輸入的欄位名稱 segment 中的每個不重複值。
  • 篩選 marketing 中行銷管道為 'Email' 且使用者輸入的欄位 segment 等於 subsegment 的列。
  • 印出 lift()stats.ttest_ind() 的結果。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

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')
編輯並執行程式碼