codecademy-examples/aggregates/a-b project/code.py
Jonathan Ervine cd0e8bb538 modified: aggregates/a-b project/code.py
Added print command
2020-03-18 17:04:45 +08:00

34 lines
1.6 KiB
Python

import pandas as pd
ad_clicks = pd.read_csv('ad_clicks.csv')
click_source = ad_clicks.groupby('utm_source').user_id.count().reset_index()
print(click_source)
ad_clicks['is_click'] = ~ad_clicks.ad_click_timestamp.isnull()
print(ad_clicks.head(10))
clicks_by_source = ad_clicks.groupby(['utm_source', 'is_click']).user_id.count().reset_index()
print(clicks_by_source)
clicks_pivot = clicks_by_source.pivot(columns='is_click', index='utm_source', values='user_id').reset_index()
clicks_pivot['percent_clicked'] = clicks_pivot[True] / (clicks_pivot[True] + clicks_pivot[False]) * 100
print(clicks_pivot)
print(ad_clicks.groupby('experimental_group').user_id.count().reset_index())
print(ad_clicks.groupby(['experimental_group', 'is_click']).user_id.count().reset_index().pivot(index='experimental_group', columns='is_click', values='user_id').reset_index())
a_clicks = ad_clicks[ad_clicks.experimental_group == 'A']
b_clicks = ad_clicks[ad_clicks.experimental_group == 'B']
a_clicks_pivot = a_clicks.groupby(['day', 'is_click']).user_id.count().reset_index().pivot(index='day', columns='is_click', values='user_id').reset_index()
a_clicks_pivot['percent_clicked'] = a_clicks_pivot[True] / (a_clicks_pivot[True] + a_clicks_pivot[False]) * 100
b_clicks_pivot = b_clicks.groupby(['day', 'is_click']).user_id.count().reset_index().pivot(index = 'day', columns = 'is_click', values = 'user_id').reset_index()
b_clicks_pivot['percent_clicked'] = b_clicks_pivot[True] / (b_clicks_pivot[True] + b_clicks_pivot[False]) * 100
print(a_clicks_pivot)
print(b_clicks_pivot)