You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python在Excel文件不同列中查找匹配词语及对应匹配情绪内容的实现方案

解决Excel双列匹配筛选的Python方案

嘿,作为Python新手碰到这种精准筛选的需求完全不用慌,咱们用pandas这个神器就能轻松搞定——它处理表格数据简直是量身定做的。下面我给你一步步拆解实现方法:

步骤1:安装必要的库

首先得确保你装了pandas和处理Excel的依赖库,打开终端跑这两条命令:

pip install pandas
pip install openpyxl  # 用来读写.xlsx格式的文件,要是处理.xls就换成xlrd

步骤2:编写核心代码

我直接给你写好可复用的代码,每一行都加了注释,你照着改参数就行:

import pandas as pd

# 1. 读取原始Excel文件,把括号里的列名换成你实际的列标题
df = pd.read_excel("原始文件.xlsx", usecols=["词语列名", "情绪列名", "其他需要保留的列名"])

# 2. 定义你要匹配的目标词语和情绪,比如要找词语是"开心"且情绪是"正面"的行
target_word = "开心"
target_sentiment = "正面"

# 3. 筛选符合条件的行:词语列等于目标词,同时情绪列等于目标情绪
filtered_df = df[(df["词语列名"] == target_word) & (df["情绪列名"] == target_sentiment)]

# 4. 把筛选结果保存到新Excel文件,index=False是去掉自动生成的行号
filtered_df.to_excel("筛选结果.xlsx", index=False)

关键细节说明

  • 列名必须完全对应:你得把代码里的词语列名、情绪列名换成你Excel里实际的列标题,大小写、空格都要一模一样,不然会找不到数据。
  • 多条件批量匹配:如果要同时匹配多个词语或情绪,可以用isin()方法,比如要找词语是["开心", "喜悦"]且情绪是["正面", "积极"]的行,条件就改成:
    filtered_df = df[(df["词语列名"].isin(["开心", "喜悦"])) & (df["情绪列名"].isin(["正面", "积极"]))]
    
  • 保留全量列数据:如果除了匹配的两列,还想保留表格里所有列的内容,直接删掉usecols参数就行,代码会读取整个Excel表格。

测试小技巧

你可以先打印筛选后的结果确认准确性,在保存文件前加一行:

print(filtered_df)

没问题再保存,避免做无用功~

内容的提问来源于stack exchange,提问作者Gennaro Ucciero

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 19:22:40