操作方法

操作方法:在 ArcGIS Pro 中使用 Python 对字段值进行减法计算并排除负结果

Last Published: February 14, 2024

描述

在 ArcGIS Pro 中,从指定值中减去字段值可能返回负结果,如下图所示。 但是,在某些地理空间操作中,有必要防止出现负结果,否则可能导致错误或意外结果。 在邻近分析或缓冲区计算中,负距离可能更难解释。 例如,如果在要素周围创建缓冲区并导致负距离,则可能表明分析或数据中存在错误。

减法计算返回负值

本文提供了在 ArcGIS Pro 中使用 Python 对字段值进行减法计算并排除负结果的工作流。

解决方案或解决方法

  1. 在 ArcGIS Pro 中打开工程。
  2. 内容窗格中,右键单击包含被减数值的要素图层,然后单击属性表
  3. 在要素图层的属性表上打开“计算字段”工具
    1. 对于输入表,从下拉列表中选择要素图层。
    2. 字段名称(现有或新建)下拉列表中选择包含被减数值的字段。 在本例中,选择 Subtract 字段。
    3. 对于表达式类型,从下拉列表中选择 Python 3
    4. 表达式文本框中使用以下 Python 表达式指定“减法”字段。 将 <fieldName> 替换为字段名称。 在本例中,替换为 Subtract。
fancy_subtract(!<fieldName>!)
  1. 代码块中指定以下 Python 表达式,然后单击确定。 将 <subtractionValue> 替换为所需的减数值。 在本例中,指定为 1200。
def fancy_subtract(subtract_from):
  value = <subtractionValue>
    if subtract_from < value:
        return 0
    else:
        diff = subtract_from - value 
        return diff
要配置的“计算字段”工具

下图显示了减法结果为负数时的非负值。

当减法结果为负数时,字段中的值返回 0

文章 ID: 000031888

获得人工智能支持

使用 Esri Support AI Chatbot 快速解决您的问题。

立即开始聊天

相关信息

发现关于本主题的更多内容

获取来自 ArcGIS 专家的帮助

联系技术支持部门

立即开始聊天

转至下载选项