从列表中搜索部分字符串,并使用该parital str添加列

时间:2017-11-02 10:06:19

标签: python pandas

我不会在df.column中搜索我保存在系列中的部分字符串,并且不会使用我在每行中找到的str创建一个新列。我的问题的一部分已经解决了 pandas: test if string contains one of the substrings in a list

  

例如,假设我有系列s = pd.Series(['cat','hat','dog','fog','pet']),我想找到s包含的所有地方任何['og','at'],我都希望得到除了宠物之外的一切。

解决方案是:

>>> searchfor = ['og', 'at']
>>> s[s.str.contains('|'.join(searchfor))]
0    cat
1    hat
2    dog
3    fog
dtype: object

但我想得到

         pet    contains
    0    cat    at
    1    hat    at
    2    dog    og
    3    fog    og
    dtype: object

1 个答案:

答案 0 :(得分:1)

使用extract如果不匹配,请dropna添加{{3}}:

NaN