Untitled

mail@pastecode.io avatar
unknown
plain_text
2 years ago
920 B
59
Indexable
import pandas as pd

# загрузка данных
users_data = pd.read_csv('users_data.csv')

# приведение столбцов к типу datetime
users_data['session_start_ts'] = pd.to_datetime(users_data['session_start_ts'])
users_data['session_end_ts'] = pd.to_datetime(users_data['session_end_ts'])

# выделение года, месяца, недели и даты начала сессии в новые столбцы
users_data['session_year'] = users_data['session_start_ts'].dt.year
users_data['session_month'] = users_data['session_start_ts'].dt.month
users_data['session_week'] = users_data['session_start_ts'].dt.isocalendar().week
users_data['session_date'] = users_data['session_start_ts'].dt.date

# расчет MAU за весь период
mau_total = users_data.groupby(['session_year', 'session_month'])['id'].nunique().mean()

# вывод результата
print(int(mau_total))