Выбор ответа Senior groupby и агрегаты обновлено
groupby по category и observed
Вопрос
Ключ segment имеет тип category с 50 категориями, в данных встречаются 3. Код написан под pandas 3.0 без явного observed. Сколько строк вернёт df.groupby("segment")["x"].sum()?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: 3: в pandas 3.0 по умолчанию observed=True. В pandas 3.0 значение по умолчанию сменилось на observed=True, и показываются только встреченные категории.
Варианты ответа
- 50, по строке на каждую категорию из типа
- 3: в pandas 3.0 по умолчанию
observed=Trueправильный ответ - 51: все категории и ещё одна строка для NaN
- Ошибка: нужно явно указать
observed
Разбор
В pandas 3.0 значение по умолчанию сменилось на observed=True, и показываются только встреченные категории. 50 строк с нулями было бы при observed=False, это поведение старых версий. Строку NaN добавляет только dropna=False, а ошибки нет: в 2.x было лишь предупреждение об изменении умолчания.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Термины по теме
Ещё по теме «groupby и агрегаты»
- groupby: agg или transform
- Почему groupby.apply медленный
- as_index=False в groupby
- Отбор клиентов по условиям на группу
- Выручка и число клиентов по городам на pandas
- Доля заказа в выручке города: transform
- Топ-N заказов в каждом городе на pandas
- dropna=False в groupby