- import pandas as pd
- import datetime as dt
- data = pd.read_csv('/datasets/data_for_tasks_3.csv', sep=',')
- data['date'] = data['date'].map(lambda x: dt.datetime.strptime(x, '%d/%m/%Y'))
- print(data.head(5))
- ordersByUsers = (
- data.groupby('userId', as_index=False)
- .agg({'orderId': 'nunique'})
- )
- ordersByUsers.columns = ['userId', 'orders']
- print(ordersByUsers.sort_values(by='orders', ascending=False).head(10))
- # Метод .groupby('...', as_index=False) сгруппирует заказы по пользователям
- # Метод .agg({'...' : 'nunique',}) подсчитает число уникальных заказов по сгруппированным данным
- # Метод .sort_values(by='...',ascending=False) отсортирует датафрейм по значению в столбце