成对融合 (分析)

摘要

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

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

插图

“成对融合”工具图示

使用情况

  • 可使用各种统计对已通过融合过程而聚合的要素的属性进行汇总或描述。 用于汇总属性的统计数据将作为单个字段添加到输出要素类中,统计数据类型的命名标准包含下划线和输入字段名称。 例如,如果对名为 POP 的字段使用 SUM 统计,则输出中将包含名为 SUM_POP 的字段。

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

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

  • 如果输入要素参数值的几何类型为点或多点,且创建多部件要素参数处于选中状态,则输出将为多点要素类。 否则,如果未选中创建多部件要素参数,则输出将为点要素类。

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

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

参数

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

要聚合的要素。

Feature Layer
输出要素类

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

Feature Class
融合字段
(可选)

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

Field
统计数据字段
(可选)

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

默认情况下,该工具不会计算任何统计数据。

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

可用统计类型如下:

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

指定在输出中是否包含多部件要素。

  • 选中 - 输出中将包含多部件要素。 这是默认设置。
  • 未选中 - 输出中不包含多部件要素。 系统将为各部件创建单独的要素。
Boolean
串连分隔符
(可选)

串连选项用于统计数据字段参数时,将用于串连值的一个或多个字符。 默认情况下,该工具将连接不带分隔符的值。

String

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

要聚合的要素。

Feature Layer
out_feature_class

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

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

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

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

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

默认情况下,该工具不会计算任何统计数据。

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

可用统计类型如下:

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

指定在输出中是否包含多部件要素。

  • MULTI_PART输出中将包含多部件要素。 这是默认设置。
  • SINGLE_PART输出中不包含多部件要素。 系统将为各部件创建单独的要素。
Boolean
concatenation_separator
(可选)

CONCATENATION 选项用于 statistics_fields 参数时,将用于串连值的一个或多个字符。 默认情况下,该工具将连接不带分隔符的值。

String

代码示例

PairwiseDissolve 示例 1(Python 窗口)

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

import arcpy
arcpy.env.workspace = "C:/data/Portland.gdb/Taxlots"
arcpy.analysis.PairwiseDissolve("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"]
 
# Run MakeFeatureLayer and SelectLayerByAttribute.  This is only to exclude 
#  features that are not desired in the output.
arcpy.management.MakeFeatureLayer(inFeatures, tempLayer)
arcpy.analysis.SelectLayerByAttribute(tempLayer, "NEW_SELECTION", expression)
 
# Run Dissolve using LANDUSE and TAXCODE as Dissolve Fields
arcpy.analysis.PairwiseDissolve(tempLayer, outFeatureClass, dissolveFields, "", 
                                "SINGLE_PART")

许可信息

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

相关主题