pandasОсновыEasyБесплатно~5 мин

Топ-10 заказов за 4-й квартал

// Условие

У тебя таблица заказов df за 2024 год.

Что нужно
Найди топ-10 самых дорогих заказов, оформленных в 4-м квартале 2024 (октябрь–декабрь). Верни в result DataFrame с этими 10 строками, отсортированный по amount по убыванию.

Колонки в результате — те же, что в исходной таблице (главное — чтобы был order_id).

// Данные

df: order_id, user_id, order_date, amount, status
▶ Решить в pandas-тренажёре

// Решение

Подсказка

Q4 — это октябрь, ноябрь, декабрь. В pandas есть df['order_date'].dt.quarter, либо можешь фильтровать через df['order_date'].dt.month.between(10, 12).

После фильтра — отсортируй по amount по убыванию: .sort_values('amount', ascending=False). Потом .head(10).

Полная цепочка: df[df['order_date'].dt.quarter == 4].sort_values('amount', ascending=False).head(10). Не забудь присвоить в result.

Сначала попробуй сам → Показать решение
df = load_data()

# Фильтр по 4-му кварталу + сортировка по amount DESC + топ-10
result = (df[df['order_date'].dt.quarter == 4]
          .sort_values('amount', ascending=False)
          .head(10)
          .reset_index(drop=True))

print(result)
Базовый паттерн: фильтр → сортировка → head. Альтернативы для Q4: df['order_date'].dt.month.between(10, 12) или явный диапазон df['order_date'].between('2024-10-01', '2024-12-31'). На собесе любят, когда ты называешь варианты и объясняешь, что выбираешь .dt.quarter за читаемость.

// Похожие задачи

// Разобраться в теме

→ pandas для аналитика