Переименовали часть столбиков чтобы они соответствовали содержимому в соответствии с рисунком 13.
Рисунок 13 – Переименование столбцов датафрейма Теперь все агрегированные кумулятивные данные по действиям посетителей
тестируемого объекта сведены в одной таблице.
8.Выполнили задание по вариантам, 10 варианту соответствует 4 вариант из 6
возможных.
Необходимо изобразить точечный график числа заказов по пользователям, полное условие в соответствии с таблицей 2 выше по тексту.
В условии в методичке (текст из методы «Используйте cumulativeData. Разделите cumulativeData на cumulativeRevenueA и cumulativeRevenueB – для группы А и B.»)
требуется использовать полученную ранее таблицу агрегированных данных для выполнения задания, однако формулировка задания подразумевает создание другой таблицы для построения графика.
Использовать агрегированные в прошлых пунктах данные для выполнения построения графика числа заказов по пользователям не получится, потому что в них нет разделения на отдельных пользователей, и мы не сможем узнать сколько заказов сделал каждый из них.
11
Разделение cumulativeData на cumulativeRevenueA и cumulativeRevenueB – для группы А и B как этого требует задание в соответствии с рисунком 14
Рисунок 14 – Разделение данных cumulativeData на группы теста
Создание сводной таблицы данных по числу заказов пользователей в соответствии с рисунком 15.
Рисунок 15 – Создание сводной таблицы для построения графика
12
Построение точечного графика. Используем MatPlotLib.pyplot.scatter на котором мы по оси у – отложите ‘orders’ (кол-во заказов), по оси х - pd.Series(range(0,len(ordersByUsers))) (порядковый номер строки данных) в
соответствии с рисунком 16.
Рисунок 16 – Оценка метрики Accuracy
Максимальное количество заказов, сделанных одним посетителем ровно 3, однако в большинстве случаев оно не превышает 1.
Вывод по первой части
Выполнив первую часть работы, мы научились определять пересечения групп пользователя для А/А и А/В теста. Так же мы разобрались с тем, что из себя представляют агрегированные кумулятивные данные полученные из сырых дынных логов системы,
научились их создавать и строить по ним графики.
13
Вторая часть
9. Вывели на экран количество каждого события и отсортировали в порядке убывания частоты (event_name) в соответствии с рисунком 17.
Рисунок 17 – Определение частоты событий
Определили, что чаще всего встречается событие "MainScreenAppear", количество записей о нем равно 119 101.
10. Подсчитали сколько пользователей совершали каждое из этих событий,
используя groupby, agg({ 'user_id':'nunique'}) в соответствии с рисунком 18.
Рисунок 18 – Определение уникальных пользователей, совершивших действия Распределение количества пользователей согласуется с количеством совершений
каждого действия.
11. Определите количество пользователей в каждой группе (246, 247, 248) в
соответствии с рисунком 19.
Рисунок 19 – Определили количество уникальны пользователей в группах Распределение пользователей по группам равномерное
14
12. Провели поиск пользователей, которые пересекаются (присутствуют в обоих группах) в соответствии с рисунком 20.
Рисунок 20 – Поиск пересечения пользователей Так как пересечения пользователей нет нам не нужно удалять записи, которые могли
бы повлиять на проверку гипотез.
15
13.Провели А/А тест.
Проверяем следующие гипотезы:
Нулевая гипотеза: Группа 246 и 247 не имеет различий;
Альтернативная гипотеза: Группа 246 и 247 отличаются.
Для проверки гипотез написали функцию test_groups(DATA, group_a, group_b, event, alpha) для проверки равенства долей в соответствии с рисунком 21.
Функция получает на вход датасет (DATA), названия 2 групп которые необходимо проверить (group_a, group_b), название события для которого проводиться проверка (event)
и уровень статистической значимости (alpha).
Рисунок 21 – Функция проверки гипотез для групп Чтобы написанная функция работала с нашими данными переименуем столбцы в
соответствии с рисунком 22.
Рисунок 22 – Переименование столбцов
16
Провели A/A тест для проверки гипотез для каждого события в соответствии с рисунком 23.
Рисунок 23 – Проведение А/А теста Так как не удалось отвергнуть нулевую гипотезу значит доли равны.
Такой результат говорит нам о том, что мы можем доверять результатам нашего теста при проведении А/В тестирования.
17
14.Провели А/B тест.
Нулевая гипотеза: Нет различий между группой А (246) и группой B (248).
Альтернативная: Есть различия между контрольной и экспериментальной группами.
Для проведения теста воспользовались написанной ранее для А/А теста функцией test_groups(DATA, group_a, group_b, event, alpha) в соответствии с рисунком 24.
Рисунок 24 – Проведение А/В теста Так как нулевая гипотеза не была отвергнута, то тест показал, что значимых отличий
между долями нет.
Из этого можно сделать вывод о том, что внесенные изменения не повлияли на конверсию заказов и их можно не вводить для всех пользователей.
Результатам этого теста мы можем доверять так как А/А тест был пройден успешно.
Вывод по второй части
Определили частоту событий и нашли количество пользователей, совершивших каждое из тестируемых событий в результате чего определили, что больше всего записей о событии "MainScreenAppear" и соответственно его совершило больше всего уникальных пользователей.
Произвели поиск пересекающихся пользователей, который не выдал не одного пользователя, это говорит о корректном разделении пользователей на группы.
Произвели А/А тестирование результаты которого показали, что выборка достаточна и можно доверять результатам последующего А/В теста.
Проведя А/В тест получили результат, говорящий о том, что тестируемые изменения не несут статистической значимости в изменение конверсии посетителей в заказы значит их можно не вносить для всех пользователей.
18
15.Ссылка на Google диск с Jupyter-ноутбук
URL:
https://colab.research.google.com/drive/18yRxvPErGPC7Ta4vr0nOv6tu55SLFaE7?usp=sharing
19
Вывод
В ходе данной лабораторной работы мы подготовили собранные данные для анализа,
избавились от пропусков и дубликатов, исправили типы данных и названия столбцов, а
также проверили чтобы в данных не осталось информации о пересекающихся пользователях.
В первой части работы мы получили по собранным данным агрегированные кумулятивные данные о посетителях и заказах по дням и построил график количества заказов по пользователям.
Во второй части получили агрегированные данные о событиях, а также провели АА и АВ тестирование, результатом которого стало решение о том, что тестируемые на группе
248 нововведения вводить для всех пользователей не имеет смысла, потому что они не изменяют конверсию посетителей в заказы.
20