如何在FME中根据指定列的单元格值删除对应整行数据
FME按列条件删除行操作指引
方案1:原生转换器实现(新手推荐)
- 接入数据源后,添加Tester转换器,这是FME内置的条件过滤核心组件
- 打开转换器配置面板,新增测试条件:选择你的目标列名,运算符设置为
=,对比值填写C - 输出时仅连接Tester的
FAILED端口到后续处理/写入组件即可:值为C的行会走PASSED端口,闲置该端口就等于删除对应行 - 如果需要多条件过滤,直接在Tester配置中新增条件行,设置AND/OR逻辑即可
方案2:Python实现(适合有Python基础的用户)
你可以直接用PythonCaller转换器写熟悉的Python逻辑完成需求,操作步骤如下:
- 工作空间中添加PythonCaller转换器
- 打开代码编辑面板,替换默认代码为以下内容,将
target_col修改为你实际的目标列名即可:
import fme import fmeobjects def processFeature(feature): target_val = feature.getAttribute('target_col') # 值为C的行直接返回不输出,等效删除 if target_val == 'C': return pyoutput(feature)
内容的提问来源于stack exchange,提问作者Hondabear
相关产品推荐
相关产品推荐

