Что выберет фильтр df[~df["status"].isin(["cancelled", "returned"])]?

AТолько строки со статусами cancelled и returned
BТолько строки, где status равен NaN
CВсе строки, кроме тех, где status равен NaN
DВсе строки, где status НЕ входит в список cancelled и returned
Правильный ответ. .isin() проверяет принадлежность значения списку, а ~ инвертирует булеву маску.

Разбор

Метод df["status"].isin([...]) возвращает булеву Series: True для тех строк, где статус входит в указанный набор. Оператор ~ инвертирует маску (True становится False и наоборот). Поэтому выражение df[~...] оставляет строки, где статус не равен ни cancelled, ни returned.

Проверь себя · 1/3разбор после ответа
В чём смысл параметров в pd.merge(df_left, df_right, left_on="sku", right_on="product_sku", how="inner")?
Тренировать Python в Telegram

Ещё вопросы по теме «Pandas и DataFrame»