ArcGIS Pro中根据已有数值字段条件计算填充新文本字段方法咨询
ArcGIS Pro按条件填充新文本字段解决方案
以下两种方法均不会修改原有字段1的内容,只会写入你新建的空文本字段:
方法1:使用属性表字段计算器(最便捷)
操作步骤:
- 打开目标图层的属性表,找到你预先创建的空文本字段,右键点击字段名,选择字段计算器
- 选择你习惯的解析器,参考对应表达式填写即可:
Arcade解析器表达式(ArcGIS Pro默认推荐,语法简洁)
直接在表达式框输入:
// 基础版本,空值默认返回"1" IIF($feature.字段1 < 0.5, "0", "1") // 空值单独处理版本,空值返回空文本,可自行修改返回值为"0"/"1" IIF(IsEmpty($feature.字段1), "", IIF($feature.字段1 < 0.5, "0", "1"))
Python解析器表达式
先在预逻辑脚本代码框输入:
def reclass_val(field1): # 空值默认返回空文本,可修改返回值适配你的需求 if field1 is None: return "" elif field1 < 0.5: return "0" else: return "1"
再在下方表达式输入框填:reclass_val(!字段1!)
方法2:使用计算字段地理处理工具(适合批量/自动化场景)
如果你需要把这个逻辑复用在多个图层、或者集成到模型构建器/Python脚本中,可以直接调用计算字段工具,参数设置和字段计算器完全一致:
- 输入表:选择你的目标图层
- 字段名:选择你新建的空文本字段
- 表达式:填写上述对应解析器的表达式即可
注意事项
- 正式运行全量计算前,可以先选中属性表中少量包含空值、小于0.5、大于等于0.5的测试行,勾选字段计算器的
仅计算所选记录选项验证结果是否符合预期 - 空值的返回逻辑可根据你的业务需求灵活调整,只需要修改表达式中空值判断分支的返回值即可
内容的提问来源于stack exchange,提问作者BHope
相关产品推荐
相关产品推荐

