Найти в Дзене
Learning to Python

Считаю чужие бонусы LeetCode 577

Всем привет!

Возвращаюсь к решению задач на Pandas, там вроде немного осталось.

Сегодня считал у кого маленький бонус. Были даны две таблицы, нужно было вывести имена и бонусы ниже определенной величины. В данном примере она составляла 1000$ ( пусть будут доллары, так решать задачи приятнее)

LeetCode 577
LeetCode 577
-2

Решение задачи довольно стандартное (объединение таблиц – фильтрация), но с последним пришлось повозился.

Решение задачи
Решение задачи

Так как бонусы есть не у всех сотрудников, то при объединении таблиц в ячейках c бонусом у них стоит null. И этот null не равен обычному нулю. Поэтому фильтрация по условию df['bonus'] < 1000 эти ячейки не включает.

Пришлось добавлять логический оператор ИЛИ (в Pandas он обозначается символом | ). И пробовать разные варианты нуля. Вот какие у меня не сработали:

df['bonus'] == 0

df['bonus'] == None

df['bonus'] == ’null’

df['bonus'] == NaN

df['bonus'] == Nan

df['bonus'] == np.Nan

После перебора этих вариантов, я загуглил ‘filter nan pandas’ и сразу нашел рабочий метод .isna()

И все заработало

-4

До скорого