Вы не можете использовать and
, так как в Python это вернет первый операнд, который имеет истинность False
(или, если в цепочке and
такой операнд отсутствует, последний элемент).
Однако вы можете использовать операторы &
и |
в качестве логических и и или соответственно для применения нескольких условий.
Так что для вашего случая вы, вероятно, захотите использовать:
df[
df.userA.str.startswith(('b','c','e','f','5')) <b>&</b>
df.userB.str.startswith(('b','c','e','f','5'))
]
(это дает «строки» фрейма данных df
, для которых и userA
и userB
начать с символа в ('b','c','e','f','5')
);или
df[
df.userA.str.startswith(('b','c','e','f','5')) <b>|</b>
df.userB.str.startswith(('b','c','e','f','5'))
]
(это дает "строки" кадра данных df
, для которых не менее userA
или userB
начинаются с символа в ('b','c','e','f','5')
)
Для получения дополнительной информации см. Документацию по Логическое индексирование в pandas Документация .