成对融合 (分析)

摘要

可使用并行处理方法基于指定的属性聚合要素。

备用工具可用于融合操作。有关详细信息,请参阅融合工具文档。

插图

融合插图

使用情况

  • 可使用各种统计对已通过融合而聚合的要素的属性进行汇总或描述。以“统计类型 + 下划线 + 输入字段名”为命名标准,将用来汇总属性的统计以单个字段的形式添加到输出要素类中。例如,如果对名为 POP 的字段使用 SUM 统计,则输出中将存在名为 SUM_POP 的字段。

  • 可以在输出要素类中创建超大型要素。当融合字段中存在少量唯一值时或将所有要素融合为单个要素时尤其适用。超大型要素可能会引起处理或显示故障或降低在地图上进行绘制或编辑时的性能。如果融合输出在一台计算机上以最大尺寸创建要素,然后将此输出移动到一个可用内存较少的计算机上,也会出现问题。要避免这些潜在问题,请取消选中创建多部分要素(Python 中的 multi_part="SINGLE_PART"),将可能较大的多部分要素分割为多个较小要素。对于超大型要素,可以使用切分工具来切割较大的要素,以解决处理、显示或性能上的问题。

  • 空值将被排除在所有统计计算之外。例如,10、5 和 NULLAVERAGE 为 7.5 ((10+5)/2)。COUNT 统计可返回统计计算中所包括值的数目,如本例中为 2。

  • 融合字段参数的添加字段按钮仅可以在“模型构建器”中使用。在模型构建器中,如果先前的工具尚未运行或其派生数据不存在,则可能不会使用字段名称来填充融合字段参数。添加字段按钮可用于添加所需字段,以完成该工具的对话框并继续构建模型。

  • 如果输入要素几何类型为点或多点,且创建多部分要素处于选中状态(Python 中的 multi_part="MULTI_PART"),则输出将为多点要素类。否则,如果未选中创建多部分要素(Python 中的 multi_part="SINGLE_PART"),则输出将为点要素类。

  • 默认情况下,来自输入的曲线要素将在输出中进行增密。要支持输出中的曲线,请使用保留曲线段环境。

  • 成对融合工具支持并行处理因子环境。如果环境未设置(默认情况下)或设置为 100,则将启用完全并行处理,同时该工具尝试将工作分配给计算机上的所有逻辑内核。将环境设置为 0 将禁用并行处理。在 1 到 99 之间指定一个因子时,工具将通过应用公式(并行处理因子 / 100 * 逻辑内核数)确定要使用的逻辑内核的百分比,其结果将向上舍入到最近的整数值。如果此公式的结果是 0 或 1,则将不启用并行处理。

参数

标注说明数据类型
输入要素

要聚合的要素。

Feature Layer
输出要素类

要创建的将包含聚合要素的要素类。

Feature Class
Dissolve_Field
(可选)

要聚合要素的一个或多个字段。

添加字段按钮(只能在 ModelBuilder 中使用)可用于添加所需字段,以完成对话框并继续构建模型。

Field
统计字段
(可选)

指定包含用于计算指定统计数据的属性值的一个或多个数值字段。 可以指定多项统计和字段组合。 空值将被排除在所有统计计算之外。

可使用第一种和最后一种统计来对文本属性字段进行汇总。 可使用任何一种统计来对数值属性字段进行汇总。

可用统计类型如下:

  • 总和 - 将指定字段的值相加在一起。
  • 平均值 - 将计算指定字段的平均值。
  • 最小值 - 将查找指定字段所有记录的最小值。
  • 最大值 - 将查找指定字段所有记录的最大值。
  • 范围 - 将计算指定字段的值范围(最大值 - 最小值)。
  • 标准差 - 将计算指定字段中值的标准差。
  • 计数 - 将查找统计计算中包括的值的数目。 计数包括除空值外的所有值。 要确定字段中的空值数,请在相应字段上创建计数,然后在另一个不包含空值的字段上创建计数(例如 OID,如果存在的话),然后将这两个值相减。
  • 第一个 - 将使用输入中第一条记录的指定字段值。
  • 最后一个 - 将使用输入中最后一条记录的指定字段值。
  • 中值 - 将计算指定字段所有记录的中值。
  • 方差 - 将计算指定字段所有记录的方差。
  • 唯一值 - 将计算指定字段的唯一值数量。
Value Table
创建多部件要素
(可选)

指定在输出要素类中是否允许多部分要素。

  • 选中 - 指定允许多部分要素。这是默认设置。
  • 取消选中 - 指定不允许多部分要素。将为各部分创建单独的要素,而不创建多部分要素。
Boolean

arcpy.analysis.PairwiseDissolve(in_features, out_feature_class, {dissolve_field}, {statistics_fields}, {multi_part})
名称说明数据类型
in_features

要聚合的要素。

Feature Layer
out_feature_class

要创建的将包含聚合要素的要素类。

Feature Class
dissolve_field
[dissolve_field,...]
(可选)

要聚合要素的一个或多个字段。

添加字段按钮(只能在 ModelBuilder 中使用)可用于添加所需字段,以完成对话框并继续构建模型。

Field
statistics_fields
[[field, {statistic_type}],...]
(可选)

指定包含用于计算指定统计数据的属性值的一个或多个数值字段。 可以指定多项统计和字段组合。 空值将被排除在所有统计计算之外。

可使用第一种和最后一种统计来对文本属性字段进行汇总。 可使用任何一种统计来对数值属性字段进行汇总。

可用统计类型如下:

  • SUM - 将指定字段的值相加在一起。
  • MEAN - 将计算指定字段的平均值。
  • MIN - 将查找指定字段所有记录的最小值。
  • MAX - 将查找指定字段所有记录的最大值。
  • RANGE - 将计算指定字段的值范围(最大值 - 最小值)。
  • STD - 将计算指定字段中值的标准差。
  • COUNT - 将查找统计计算中包括的值的数目。 计数包括除空值外的所有值。 要确定字段中的空值数,请在相应字段上创建计数,然后在另一个不包含空值的字段上创建计数(例如 OID,如果存在的话),然后将这两个值相减。
  • FIRST - 将使用输入中第一条记录的指定字段值。
  • LAST - 将使用输入中最后一条记录的指定字段值。
  • MEDIAN - 将计算指定字段所有记录的中值。
  • VARIANCE - 将计算指定字段所有记录的方差。
  • UNIQUE - 将计算指定字段的唯一值数量。
Value Table
multi_part
(可选)

指定在输出要素类中是否允许多部分要素。

  • MULTI_PART指定允许多部分要素。这是默认设置。
  • SINGLE_PART指定不允许多部分要素。将为各部分创建单独的要素,而不创建多部分要素。
Boolean

代码示例

PairwiseDissolve 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 PairwiseDissolve 工具。

import arcpy
arcpy.env.workspace = "C:/data/Portland.gdb/Taxlots"
arcpy.PairwiseDissolve_analysis("taxlots", "C:/output/output.gdb/taxlots_dissolved",
                                ["LANDUSE", "TAXCODE"], "", "SINGLE_PART")
PairwiseDissolve 示例 2(独立脚本)

以下独立脚本演示了如何使用 PairwiseDissolve 工具。

# Name: PairwiseDissolve_Example2.py
# Description: Dissolve features based on common attributes
 
# Import system modules
import arcpy
arcpy.env.workspace = "C:/data/Portland.gdb/Taxlots"
 
# Set local variables
inFeatures = "taxlots"
tempLayer = "taxlotsLyr"
expression = arcpy.AddFieldDelimiters(inFeatures, "LANDUSE") + " <> ''"
outFeatureClass = "C:/output/output.gdb/taxlots_dissolved"
dissolveFields = ["LANDUSE", "TAXCODE"]
 
# Execute MakeFeatureLayer and SelectLayerByAttribute.  This is only to exclude 
#  features that are not desired in the output.
arcpy.MakeFeatureLayer_management(inFeatures, tempLayer)
arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION", expression)
 
# Execute Dissolve using LANDUSE and TAXCODE as Dissolve Fields
arcpy.PairwiseDissolve_analysis(tempLayer, outFeatureClass, dissolveFields, "", 
                                "SINGLE_PART")

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题