【问题标题】:Finding an exact keyword in an excel cells using python Pandas使用 python Pandas 在 excel 单元格中查找确切的关键字
【发布时间】:2021-02-03 13:05:48
【问题描述】:

我正在这里寻求帮助。我有两个数据框 DF1 和 DF2。 DF1 包含员工编号及其姓名。 DF2 包含员工编号和评论列。我想查找 DF2 中的 Comments 列是否包含 DF1 中存在的与其 Emp 编号唯一值相对应的名称。如果名称存在于 DF2 的 Comments 列中,则应返回“名称存在”。如果名称在 cmets 列中不存在,则应返回“名称不存在”

如果有人可以提供帮助,我们将不胜感激。 TIA

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    numpy.whereSeries.str.contains 与正则表达式与\b\b 一起用于单词边界,并在可能的情况下使用re.escape 一些特殊的正则表达式字符:

    import re
    pat = '|'.join(r"\b{}\b".format(re.escape(x)) for x in DF1['Name'])
    
    DF2['new'] = np.where(DF2['Name'].str.contains(pat), 
                          'Name exist', 
                          'Name does not exist')
    

    【讨论】:

    • 感谢您的回复 Jezrael。如果 DF2['cmets'] 列仅包含名称但我的列包含一大堆单词,则上述方法有效。
    猜你喜欢
    • 2020-05-30
    • 1970-01-01
    • 2016-12-20
    • 2017-10-24
    • 1970-01-01
    • 1970-01-01
    • 2019-02-15
    • 1970-01-01
    • 2021-06-21
    相关资源
    最近更新 更多