gpt4 book ai didi

python - 按另一个 DataFrame 过滤 Series/DataFrame

转载 作者:行者123 更新时间:2023-12-04 10:04:04 25 4
gpt4 key购买 nike

假设我有一个系列(或数据帧)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

我想要的输出(基本上是 s1s2 的交集):
     Uni City
0 Searcy
1 Angwin
2 Fairbanks
3 Ann Arbor

问题是:我想创建一个包含 的系列城市 但只有这些,有大学/学院。我的第一个想法是从 s1 中删除“大学”或“学院”部分。 ,但事实证明这还不够,例如 Angwin Pacific Union College .然后我想只留下第一个词,但不包括 Ann Arbor .
最后,我得到了所有城市的系列 s2现在我试图将它用作过滤器(类似于 .contains().isin() ),所以如果一个字符串 s1 (大学名称)包含 任何 s2 的元素(城市名称),然后只返回城市名称。

我的问题是:如何以简洁的方式做到这一点?

最佳答案

我将尝试构建包含在至少一个大学名称中的城市的列表理解:

pd.Series([i for i in s2 if s1.str.contains(i).any()], name='Uni City')

使用您的示例数据,它提供:
0       Searcy
1 Angwin
2 Ann Arbor
Name: Uni City, dtype: object

关于python - 按另一个 DataFrame 过滤 Series/DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61678886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com