Рассмотрим, основные способы заполнения пропусков с Pandas. В демонстрационных целях создадим датафрейм:
Заполнение чаще всего осуществляется с помощью метода fillna. Распространенным способом является вставка на место пропусков некоторого фиксированного значения (в fillna можно передать словарь, в котором указать для каждого столбца такое значение):
Также популярно заполнение значениями из предшествующей (аргумент method='bfill') либо последующей записи (method='ffill'):
Следует отметить, что для аналогичных действий имеются специальные методы с названиями bfill и ffill:
Более сложным кейсом является заполнение значений с учетом группы, к которой принадлежит объект. Например, пусть она определяется колонкой 'gr', а время столбцом 'month', и вы хотите заполнить пропуски более ранними значениями в колонках. Тогда сначала отсортируйте датафрейм по дате:
После аналогичные методы можно вызывать на сгруппированных объектах:
то же с fillna:
Распространенным вариантом является заполнение в одну сторону, затем в другую. Это можно сделать с методом apply:
или с методом transform: