Предположим, у меня есть серия (или DataFrame) s1
, например, список всех университетов и колледжей в США:
University
0 Searcy Harding University
1 Angwin Pacific Union College
2 Fairbanks University of Alaska Fairbanks
3 Ann Arbor University of Michigan
И еще одна серия (od DataFrame) s2
, для примерный список всех городов в США:
City
0 Searcy
1 Angwin
2 New York
3 Ann Arbor
И желаемый результат (в основном пересечение s1
и s2
):
Uni City
0 Searcy
1 Angwin
2 Fairbanks
3 Ann Arbor
Дело в том, что я Я хочу создать серию, состоящую из городов , но только тех, в которых есть университет / колледж. Первой моей мыслью было удалить части «Университет» или «Колледж» из s1
, но оказалось, что этого недостаточно, как в случае Angwin Pacific Union College
. Затем я подумал о том, чтобы оставить только первое слово, но исключает Ann Arbor
. Наконец, я получил серию всех городов s2
, и теперь я пытаюсь использовать его в качестве фильтра (что-то похожее на .contains()
или .isin()
), поэтому, если строка s1
(имя Uni) содержит любое из элементов s2
(название города), затем вернуть только название города.
У меня вопрос: как это аккуратно сделать?