Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛР / ЛР5 / ВАД ЛР5

.pdf
Скачиваний:
10
Добавлен:
25.06.2023
Размер:
716.48 Кб
Скачать

ГУАП

КАФЕДРА №41

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

ассистент

 

 

 

В.В. Боженко

 

 

 

 

 

 

 

 

 

должность, уч. степень, звание

 

подпись, дата

 

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №5

ПРОВЕДЕНИЕ A/B ТЕСТИРОВАНИЯ

по курсу: Введение в анализ данных

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

подпись, дата

 

инициалы, фамилия

Санкт-Петербург 2022

Цель работы

Изучение изучить алгоритмы для проведения A/B тестирования для принятия

решений.

Индивидуальный вариант

Индивидуальный вариант номер 10 в соответствии с таблицей 1.

 

 

 

Таблица 1 – Индивидуальный вариант задания

 

 

 

 

Название

 

 

Пояснение

датафрейма

 

 

 

 

 

orders.csv

 

1.

transactionId — идентификатор заказа;

 

 

2.

visitorId — идентификатор пользователя, совершившего заказ;

 

 

3.

date — дата, когда был совершён заказ;

 

 

4.

revenue — выручка заказа;

 

 

5.

group — группа A/B-теста, в которую попал заказ.

visitors.csv

 

1.

date — дата;

 

 

2.

group — группа A/B-теста;

 

 

3.

visitors — количество пользователей в указанную дату в

 

 

указанной группе A/B-теста

logs_exp.csv

 

Каждая запись в логе — это действие пользователя, или событие.

 

 

1.

EventName — название события;

 

 

2.

DeviceIDHash — уникальный идентификатор пользователя;

 

 

3.

EventTimestamp — время события;

 

 

4.

ExpId — номер эксперимента: 246 и 247 — контрольные группы,

 

 

а 248 — экспериментальная.

Вариант номер 4 индивидуального задания для первой части работы в соответствии

с таблицей 2.

 

 

 

 

 

 

Таблица 2 – Индивидуальный вариант задания

 

 

Вариант №

Пояснения

4

Изобразить точечный график числа заказов по пользователям.

 

Для этого с помощью groupby получите таблицу ordersByUsers следующего

 

вида

 

А затем с помощью scatter по оси у – отложите ‘orders’, по оси х - pd.Series(range(0,len(ordersByUsers)))

2

Ход работы

1.Получили у преподавателя наборы данных orders.csv, visitors.csv, logs_exp.csv

всоответствии с индивидуальным вариантом №10 для проведения анализа согласно цели выполняемой работы.

Загрузили датасет с помощью библиотеки pandas в Jupyter-ноутбуке в соответствии с рисунком 1.

Рисунок 1 – Загрузка датаcета в Colab из файла 5gym_churn.csv на Google Диске

3

Вывод: Ознакомившись с данные на первый взгляд с ними все хорошо только названия столбцов нужно привести к единому змеиному регистру, переименовывать не нужно так как названия столбцов соответствуют содержимому.

2.Провели предварительную обработку данных.

Названия столбцов соответствуют содержимому, поэтому необходимо только привести где нужно названия к змеиному регистру для лучшей читаемости в соответствии с рисунком 2.

Рисунок 2 – Устранение проблем названий столбцов Проверили данные на наличие пропусков значений в столбцах в соответствии с

рисунком 3.

Рисунок 3 – Проверка датасетов на наличие пропусков значений

Вывод: Пропусков в дата сете не оказалось, исправлять ничего не нужно – это упрощает нам работу.

4

Проверили данные на наличие явных дубликатов и удалили их в соответствии с рисунком 4.

Рисунок 4 – Проверка дата сета на наличие явных дубликатов

Вывод: Явные дубликаты обнаружены только в датафрейме logs_exp, их мы удалил.

Проверили данные на наличие неявных дубликатов и ошибочных значений групп в соответствии с рисунками 5

Рисунок 5 – Проверка неявных дубликатов и ошибочных значений Ошибок и неявных дубликатов не оказалось.

Вывод: Ошибок и неявных дубликатов не оказалось.

5

Исправили типы данных на соответствующие содержимому в соответствии с рисунком 6.

Рисунок 6 – Исправление типов данных

Вывод: Ошибки стандартные связанные с тем, что среда не может точно определить данные содержащие отметки времени и строковые типы данных.

6

Первая часть

3. Выявили и удалили из датафреймов данные о пересекающихся. Такие данные не пригодны для анализа, потому что нельзя точно определить какая версия тестируемого объекта повлияла на его действия. Код поиска и удаления пересекающихся пользователей в соответствии с рисунком 7 для датафрейма Orders и рисунком 8 для датафрейма Visitors.

Рисунок 7 – Выявление и удаление пересечения пользователей датафрейма Orders

7

Рисунок 8 – Выявление и удаление пересечения пользователей датафрейма Visitors

Вывод: В обоих датафреймах были обнаруженны пересечения пользователей,

которые пришлось удалять для обеспечения корректности последующего анализа.

4. Создали массив уникальных пар значений дат и групп теста в соответствии с рисунком 9.

Рисунок 9 – Получение массива уникальных пар дат и групп теста

8

5. Получили агрегированные кумулятивные данные о заказах по дням в соответствии с рисунком 10.

Рисунок 10 – Получение агрегированных кумулятивных данных о заказах по дням

Вывод: Полученные данные отражают то сколько уникальных пользователей было в определенный день, сколько заказов они сделали, какую выручку принести и самое главное для теста к какой группе они относились.

9

6. Аналогично предыдущему пункту получили агрегированные кумулятивные данные о посетителях по дням в соответствии с рисунком 11.

Рисунок 11 – Получение агрегированных кумулятивных данных о посетителях по дням

Вывод: Полученные данные отражают то сколько пользователей было в определенный день и самое главное для теста к какой группе они относились.

7. Объединили данные в одной таблице cumulativeData в соответствии с рисунком 12.

Рисунок 12 – Объединение данных в одной таблице

10

Соседние файлы в папке ЛР5