Что верно про два шага: mask = df["col"] > 0 и затем df[mask]?
A
mask это булева Series длиной как число строк df; df[mask] это исходный DataFrameB
mask это DataFrame той же формы, что у df; df[mask] это одиночная Series из значенийC
mask это булева Series по строкам df; df[mask] это DataFrame со строками маски TrueD
mask это число строк df со значением True; df[mask] это булева Series длиной как dfПравильный ответ. Условие по столбцу даёт булеву
Series, а применение маски к DataFrame возвращает строки, где значение True.Разбор
Выражение df["col"] > 0 сравнивает значения одного столбца и возвращает булеву Series (один элемент на строку). Когда эту Series используют как индексатор df[mask], pandas выбирает строки, где маска равна True. Так обычно строится фильтрация данных в DataFrame без циклов и явного перебора строк.
Проверь себя · 1/3разбор после ответа
В чём смысл параметров в
pd.merge(df_left, df_right, left_on="sku", right_on="product_sku", how="inner")?Ещё вопросы по теме «Pandas и DataFrame»
- Что вернёт выражение `df[df["price"] > 100]`?
- В `DataFrame` `df` есть столбцы `country`, `user_id`, `revenue`. Что вернёт выражение `df.loc[df["country"] == "RU", ["user_id", "revenue"]]`?
- В `df` есть столбец `age`. Какие значения `age` попадут в результат `df[(df["age"] >= 18) & (df["age"] <= 25)]`?
- Что выберет фильтр `df[~df["status"].isin(["cancelled", "returned"])]`?
- В `df` есть столбцы `user_id` и `amount`. Что вернёт выражение `df.groupby("user_id")["amount"].sum()`?
- Все вопросы по «Pandas и DataFrame» →