顧客セグメンテーション

pandasで学ぶマーケティングキャンペーン分析

Jill Rosok

Data Scientist

一般的なオーディエンスの分け方

セグメンテーション

  • 年齢
  • 性別
  • 位置情報
  • 過去の取引・接点
  • 接触したマーケティングチャネル
pandasで学ぶマーケティングキャンペーン分析

pandas でのセグメント化

# Subset to include only House Ads
house_ads = marketing\
         [marketing['subscribing_channel'] == 'House Ads']

retained = house_ads[house_ads['is_retained'] == True]\ ['user_id'].nunique() subscribers = house_ads[house_ads['converted'] == True]\ ['user_id'].nunique() retention_rate = retained/subscribers print(round(retention_rate*100,2), '%')
58.05 %
pandasで学ぶマーケティングキャンペーン分析

もっと簡単にセグメント化できない?

shutterstock_705276157.jpg

pandasで学ぶマーケティングキャンペーン分析

pandas でのセグメント化 - groupby()

# Group by subscribing_channel and calculate retention
retained = marketing[marketing['is_retained'] == True]\
          .groupby(['subscribing_channel'])\
          ['user_id'].nunique()
print(retained)          
subscribing_channel
Email        109
Facebook     152
House Ads    173
Instagram    158
Push          54
Name: user_id, dtype: int64
pandasで学ぶマーケティングキャンペーン分析

pandas でのセグメント化 - groupby()

# Group by subscribing_channel and calculate subscribers
subscribers = marketing[marketing['converted'] == True]\
            .groupby(['subscribing_channel'])\
            ['user_id'].nunique()
print(subscribers)            
subscribing_channel
Email        125
Facebook     221
House Ads    298
Instagram    232
Push          77
Name: user_id, dtype: int64
pandasで学ぶマーケティングキャンペーン分析

セグメント結果

# Calculate the retention rate across the DataFrame
channel_retention_rate = (retained/subscribers)*100
print(channel_retention_rate)
subscribing_channel
Email        87.200000
Facebook     68.778281
House Ads    58.053691
Instagram    68.103448
Push         70.129870
Name: user_id, dtype: float64
pandasで学ぶマーケティングキャンペーン分析

¡Vamos a practicar!

pandasで学ぶマーケティングキャンペーン分析

Preparing Video For Download...