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

Pandas Query执行报错,如何基于Section和Title筛选CSV中的ID?

解决Pandas query筛选数据的SyntaxError问题

问题场景

给定CSV数据:

ID,Title,Created By,Created On,Estimate,Forecast,Priority,References,Section,Section Depth,Section Description,Suite,Suite ID,Type,Updated By,Updated On
C28045,test1,dsa,10/27/2022 1:56 AM,,,Highest,,primary,0,,Master,S378,Automated,test,10/27/2022 4:33 AM
C28060,test32,dsa,10/27/2022 4:34 AM,,,Medium,,primary,0,,Master,S378,Automated,test,10/27/2022 4:34 AM
C28062,test5,dsa,10/27/2022 4:34 AM,,,Medium,,primary,0,,Master,S378,Automated,test,10/27/2022 4:34 AM
C28059,test6,dsa,10/27/2022 4:06 AM,,,Medium,,sec,0,,Master,S378,Automated,test,10/27/2022 4:33 AM
C28061,test643,dsa,10/27/2022 4:34 AM,,,Medium,,sec,0,,Master,S378,Automated,test,10/27/2022 4:34 AM
C28063,tes4352,dsa,10/27/2022 4:34 AM,,,Medium,,sec,0,,Master,S378,Automated,test,10/27/2022 4:34 AM

尝试用Pandas根据Section和Title筛选对应ID,编写代码如下:

import pandas as pd

data = pd.read_csv(csvPath)
data.query('Section = primary and Title = test32', inplace=True)
print(data)

执行后触发错误:

File "<unknown>", line 1
    Section =primary and Title =test32 
    ^^^^^^^^^^^^^^^^
SyntaxError: Python keyword not valid identifier in numexpr query

错误原因

  1. 比较运算符错误:query表达式中,相等比较需用==而非=,=是赋值运算符,不符合查询语法规范。
  2. 字符串值未加引号:primary和test32是字符串字面量,未加引号会被Pandas解析为变量名,导致识别错误。

修复方案

方案1:修正query语法

将比较运算符改为==,并给字符串值添加引号(注意和外层字符串的引号区分):

import pandas as pd

data = pd.read_csv(csvPath)
# 外层用单引号,内部字符串用双引号
result = data.query('Section == "primary" and Title == "test32"')
# 或外层双引号,内部单引号
# result = data.query("Section == 'primary' and Title == 'test32'")
print(result['ID'].values[0])  # 直接输出匹配的ID

方案2:使用布尔索引(更直观)

如果觉得query语法容易踩坑,推荐用布尔索引筛选:

import pandas as pd

data = pd.read_csv(csvPath)
# 布尔条件组合筛选
filtered_data = data[(data['Section'] == 'primary') & (data['Title'] == 'test32')]
# 提取并输出ID
if not filtered_data.empty:
    print(filtered_data['ID'].iloc[0])
else:
    print("未找到匹配的数据")

两种方案均可正确筛选出目标记录,对应的ID为C28060。

内容的提问来源于stack exchange,提问作者gabriel munteanu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 16:10:37