【问题标题】:Check if words from an Excel column can be found in another Excel Column检查是否可以在另一个 Excel 列中找到 Excel 列中的单词
【发布时间】:2021-10-18 21:28:01
【问题描述】:

我在这里停留在 Python 代码上。 我有两个 Excel 列,我的意图是搜索 Column[Names] 中的每一行,以及 Column[Words] 中的任何单词是否匹配。 从 Column[Names] 中的适用行中删除文本并将剩余的字符/单词返回到另一列。

所以我应该得到的结果是

【问题讨论】:

    标签: python pandas dataframe jupyter-notebook


    【解决方案1】:

    您可以使用 pandas 的 read_excel 函数来加载您的电子表格:

    import pandas as pd
    df = pd.read_excel('spreadsheet.xslx')
    

    然后您可以从“名称”创建一个名为“结果”的新列:

    df['Result']=df['Names']
    

    然后您可以遍历数据框并将“单词”列中的单词替换为“”,从而有效地将它们从句子中删除:

    for index, row in df.iterrows():
        row['Result']=row['Result'].replace(row['Words'], "")
    

    编辑:

    替换单词列中所有出现的单词更加容易!

    for word in df['Words'].to_list():
        df['Result']=df['Result'].replace(word, "", regex=True)
    

    最后,您可以将“结果”列/系列导出到新的数据框。

    【讨论】:

    • 感谢您的努力,我希望代码遍历 Column[Words] 并删除每个匹配的单词。它不限于适用的行。
    • 我的错!我更新了我的答案以考虑到这一点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-23
    • 1970-01-01
    • 1970-01-01
    • 2020-09-11
    • 1970-01-01
    相关资源
    最近更新 更多