дополнить код
#Получаем данные из файлов 7_4_Events.csv** и **purchase.csv
import pandas as pd
events_df = pd.read_csv(‘7_4_Events.csv’)
purchase_df = pd.read_csv(‘purchase.csv’)

events_df_2018 = events_df[events_df[‘start_time’].str[:4] == ‘2018’] #Таблица за 2018 год
users_2018 = events_df_2018[events_df_2018[‘event_type’] == ‘registration’][‘user_id’].to_list() # Список пользователей зарегистрированных в 2018
events_df = events_df[events_df[‘user_id’].isin(users_2018)] #Создание таблицы с пользователями, которые зарегистрировались только в 2018
purchase_df = purchase_df[purchase_df[‘user_id’].isin(users_2018)] #Таблица об оплате пользователей зарегистрировались в 2018

#Для начала посмотрим, сколько пользователей совершают событие registration.

events_df[events_df[‘event_type’] == ‘registration’][‘user_id’].nunique()

#Посмотрим на срез данных по событию tutorial_start.

events_df[events_df[‘event_type’] == ‘tutorial_start’].head(10)

#Посмотрим на количество пользователей, которые совершают событие tutorial_start:

events_df[events_df[‘event_type’] == ‘tutorial_start’][‘user_id’].nunique()

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

#Давайте определим процент пользователей, которые перешли к выполнению обучения, и запишем его в переменную percent_tutorial_start_users.

registered_users_count = events_df[events_df[“event_type”] == “registration”][
“user_id”
].nunique()
tutorial_start_users_count = events_df[events_df[“event_type”] == “tutorial_start”][
“user_id”
].nunique()
percent_tutorial_start_users = tutorial_start_users_count / registered_users_count
print(
“Процент пользователей, начавших обучение (от общего числа зарегистрировавшихся): {:.2%}”.format(
percent_tutorial_start_users
)
)

#Теперь давайте посмотрим, какое количество пользователей проходит обучение до конца (событие tutorial_finish).

events_df[events_df[‘event_type’] == ‘tutorial_finish’][‘user_id’].nunique()

#Рассчитаем процент пользователей, завершивших обучение, среди пользователей, которые начали обучение. Это будет показатель tutorial_completion_rate (коэффициент «завершаемости» обучения).

tutorial_finish_users_count = events_df[events_df[“event_type”] == “tutorial_finish”][
“user_id”
].nunique()
tutorial_completion_rate = tutorial_finish_users_count / tutorial_start_users_count
print(
“Процент пользователей, завершивших обучение: {:.2%}”.format(
tutorial_completion_rate
)
)

поправить код(дополнить) чтобы Определить, насколько обучение сокращает время прохождения этапов игры.

Для этого необходимо сравнить среднее время прохождения этапов игры для пользователей, завершивших обучение, и пользователей, не начинавших обучение. Для каждого пользователя необходимо определить время, прошедшее между началом и завершением каждого этапа игры. Затем для каждого этапа рассчитать среднее время для пользователей, завершивших обучение, и пользователей, не начинавших обучение, и сравнить полученные показатели, в таблице Event есть только такие данные: id	идентификатор события
user_id	уникальный идентификатор пользователя, совершившего событие в приложении
start_time	дата и время события
event_type	тип события (значения: registration — регистрация; tutorial_start — начало обучения; tutorial_finish — завершение обучения; level_choice — выбор уровня сложности; pack_choice — выбор пакетов вопросов)
tutorial_id	идентификатор обучения (этот идентификатор есть только у событий обучения)
selected_level	выбранный уровень сложности обучения