【发布时间】:2020-05-08 12:12:09
【问题描述】:
假设我有一个系列(或 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(城市名称)的任何元素,则只返回城市名称。
我的问题是:如何以一种简洁的方式做到这一点?
【问题讨论】:
-
@AlexandreB。当然。已编辑。
-
你说你想要的输出是
s1和s2的交集,但是Fairbanks不在s2中? -
@thesecond,看看我的回答,如果您需要更多帮助,请告诉我
标签: python pandas dataframe series