Выбор ответа Middle groupby и агрегаты обновлено

NaN в ключе группировки pandas

Вопрос

У части строк city равно NaN. Что вернёт df.groupby("city")["amount"].sum() по умолчанию?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Только группы с непустым городом: NaN в ключе выпадут. По умолчанию dropna=True, и строки с NaN в ключе не попадают ни в одну группу.

Варианты ответа

  1. Отдельную группу NaN с суммой этих строк в конце
  2. Ошибку KeyError: ключ группировки не может быть NaN
  3. Группу с ключом пустой строки, куда сложатся пропуски
  4. Только группы с непустым городом: NaN в ключе выпадутправильный ответ

Разбор

По умолчанию dropna=True, и строки с NaN в ключе не попадают ни в одну группу. Чтобы получить группу NaN, нужен groupby("city", dropna=False). Ошибки нет, а пустой строкой pandas пропуски не заменяет.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме