Вопрос 1:
IIUC, вам просто нужно сделать:
len(df[(df.group=='treatment') & (df.landing_page != 'new_page')])
, который выдает:
2
В общем, вы можете получить все подсчетыдля комбинаций group
и treatment
с использованием groupby
:
>>> df.groupby(['group','landing_page']).size()
group landing_page
control new_page 1
old_page 1
treatment new_page 1
old_page 2
dtype: int64
Показано, что у вас есть только 1 treatment
группа с new_page
и 2 treatment
группы с old_page
Вопрос 2:
Сгруппируйте по user_id
и получите среднее значение converted
столбца:
df.groupby('user_id').converted.mean()
# user_id
# 12345 0
# 12346 1
# 12347 1
# 12349 1
# Name: converted, dtype: int64