Слияние по атрибуту (Управление данными)

Уровень лицензии:BasicStandardAdvanced

Краткая информация

Агрегирует пространственные объекты на основе заданных атрибутов.

Более подробно о том, как работает инструмент Слияние по атрибуту (Dissolve)

Рисунок

Иллюстрация инструмента Слияние
Иллюстрация инструмента Слияние

Использование

Синтаксис

Dissolve_management (in_features, out_feature_class, {dissolve_field}, {statistics_fields}, {multi_part}, {unsplit_lines})
ПараметрОбъяснениеТип данных
in_features

Пространственные объекты, которые будут объединены.

Feature Layer
out_feature_class

Класс пространственных объектов, который будет содержать агрегированные объекты.

Feature Class
dissolve_field
[dissolve_field,...]
(дополнительно)

Поле или поля, по которым будут объединены объекты.

Кнопка Добавить поле (Add Field), которая используется только в ModelBuilder, позволяет вам добавлять нужные поля, так что вы можете закрыть диалоговое окно и продолжить построение модели.

Field
statistics_fields
[[field, {statistic_type}],...]
(дополнительно)

Поля и статистика, с которыми будут суммироваться атрибуты. Поля текстовых атрибутов могут быть суммированы с помощью статистики FIRST или LAST. Числовые поля атрибутов могут быть суммированы с помощью любой статистики. Пустые значения (Nulls) исключаются из всех статистических вычислений.

  • FIRST – Находит первую запись во Входных объектах (Input Features) и использует ее указанное значение поля.
  • LAST – Находит последнюю запись в Входных объектах (Input Features) и использует ее указанное значение поля.
  • SUM – Вычисляет суммарное значение атрибута в заданном поле.
  • MEAN – Вычисляет среднее арифметическое для указанного поля.
  • MIN – Находит наименьшее значение для всех записей заданного поля.
  • MAX – Находит максимальное среди всех значений данного поля.
  • RANGE – Вычисляет диапазон значений в данном поле (MAX-MIN).
  • STD – Вычисляет значение среднеквадратичного отклонения для значений данного поля.
  • COUNT – Определяет количество значений, участвующих в статистических вычислениях. Пересчитываются все значения, исключая пустые значения. Может быть полезно, например, чтобы определить количество нулевых значений в поле. Используйте тип статистики COUNT для этого поля, и тип статистики COUNT для другого поля, которое гарантировано не содержит нулей (например, OID, если присутствует), затем вычтите одно из другого.
Value Table
multi_part
(дополнительно)

Укажите, может ли выходной класс объектов содержать составные объекты.

  • MULTI_PARTОзначает, что составные объекты допустимы. Это значение используется по умолчанию.
  • SINGLE_PARTОзначает, что составные объекты недопустимы. Вместо создания составных объектов, для каждой части будут созданы некорректные пространственные объекты.
Boolean
unsplit_lines
(дополнительно)

Управляет поведением линейных объектов при слиянии.

  • DISSOLVE_LINESСлияние линий будет производиться в один пространственный объект. Это значение используется по умолчанию.
  • UNSPLIT_LINESПроизводится слияние линий, только если две линии имеют общую конечную вершину.
Boolean

Пример кода

Dissolve пример 1 (окно Python)

На следующем скрипте окна Python демонстрируется, как использовать инструмент Слияние (Dissolve) с запуском из окна Python в ArcGIS.

import arcpy
from arcpy import env
env.workspace = "C:/data/Portland.gdb/Taxlots"
arcpy.Dissolve_management("taxlots", "C:/output/output.gdb/taxlots_dissolved",
                          ["LANDUSE", "TAXCODE"], "", "SINGLE_PART", 
                          "DISSOLVE_LINES")
Слияние. Пример 2 (автономный скрипт)

На следующем автономном скрипте демонстрируется, как использовать инструмент Слияние (Dissolve).

# Name: Dissolve_Example2.py
# Description: Dissolve features based on common attributes

 
# Import system modules
import arcpy
from arcpy import env
 
# Set environment settings
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.Dissolve_management(tempLayer, outFeatureClass, dissolveFields, "", 
                          "SINGLE_PART", "DISSOLVE_LINES")

Параметры среды

Связанные темы

Информация о лицензировании

ArcGIS for Desktop Basic: Да
ArcGIS for Desktop Standard: Да
ArcGIS for Desktop Advanced: Да
5/10/2014