Анализ группирования (Grouping Analysis) (Пространственная статистика)

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

Резюме

Группирует объекты на основе атрибутов объектов и дополнительных пространственных/временных ограничений.

Более подробно о работе инструмента Анализ группирования (Grouping Analysis)

Рисунок

Диаграмма Анализ группирования (Grouping Analysis)

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

Синтаксис

GroupingAnalysis_stats (Input_Features, Unique_ID_Field, Output_Feature_Class, Number_of_Groups, Analysis_Fields, Spatial_Constraints, {Distance_Method}, {Number_of_Neighbors}, {Weights_Matrix_File}, {Initialization_Method}, {Initialization_Field}, {Output_Report_File}, {Evaluate_Optimal_Number_of_Groups})
ПараметрОбъяснениеТип данных
Input_Features

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

Feature Layer
Unique_ID_Field

Целое поле, содержащее разное значение для каждого объекта в наборе данных Входные объекты (Input Features).

Field
Output_Feature_Class

Новый выходной класс объектов, содержащий все объекты, указанные поля анализа и поле, указывающее, какой группе принадлежит объект.

Feature Class
Number_of_Groups

Число создаваемых групп. Параметр Выходной отчет (Output Report) будет отключен, если групп больше 15.

Long
Analysis_Fields
[Analysis_Fields,...]

Список полей, которые будут использоваться, чтобы различать группы друг от друга. Параметр Выходной отчет (Output Report) будет отключен, если полей больше 15.

Field
Spatial_Constraints

Определяет, как пространственные отношения между объектами должны ограничивать создаваемые группы.

  • CONTIGUITY_EDGES_ONLY (Примыкание только ребрами)Группы с непрерывными полигональными объектами. Только полигоны с общим ребром могут входить в одну группу.
  • CONTIGUITY_EDGES_CORNERS (Примыкание ребрами и углами)Группы с непрерывными полигональными объектами. Только полигоны с общим ребром или общей вершиной могут входить в одну группу.
  • DELAUNAY_TRIANGULATION (Триангуляция Делоне)У объектов в одной группе будет, по крайней мере, один общий естественный сосед с другим объектом из этой группы. Отношения естественной окрестности основаны на триангуляции Делоне. Концептуально, метод триангуляции Делоне создает сеть неперекрывающихся треугольников на основе центроидов объектов. Каждый объект — это узел треугольника, а узлы с общими ребрами считаются соседями.
  • K_NEAREST_NEIGHBORS (Ближайшая окрестность K)Объекты в одной группе будут расположены рядом друг с другом. Каждый объект будет соседом, по крайней мере, для одного другого объекта в группе. Соседские отношения основаны на ближайших K объектах, при этом вы указываете целое число K для параметра Количество соседей (Number of Neighbors).
  • GET_SPATIAL_WEIGHTS_FROM_FILEПространственные и, при необходимости, временные отношения определяются файлом пространственных весов (SWM). Создайте файл матрицы пространственных весов с помощью инструмента Создать матрицу пространственных весов.
  • NO_SPATIAL_CONSTRAINTОбъекты группируются только с использованием близости в пространстве данных. Объекты не обязательно должны располагаться рядом друг с другом в пространстве или времени, чтобы попасть в одну группу.
String
Distance_Method
(дополнительно)

Определяет, как рассчитываются расстояния от одного объекта до соседнего объекта.

  • ЭВКЛИДОВЫЙ (EUCLIDEAN)Расстояние по прямой линии между двумя точками (как ворона летает)
  • МАНХЭТТЕНСКОЕ (MANHATTAN)Расстояние между двумя точками, измеренное вдоль осей (городских кварталов); рассчитывается суммированием абсолютных разностей между координатами х и у
String
Number_of_Neighbors
(дополнительно)

Этот параметр включен, если для параметра Пространственные ограничения (Spatial Constraints) задана опция K_NEAREST_NEIGHBORS или один из методов CONTIGUITY. Число соседей по умолчанию — 8. Для опции K_NEAREST_NEIGHBORS это целое число отражает точное количество кандидатов в ближайшие соседи, учитываемых при создании групп. Объект не будет включен в группу, если один из других объектов в этой группе не является ближайшим K соседом. Для методов CONTIGUITY это значение отражает точное число кандидатов в соседи, учитываемых только для островных полигонов. Так как у островных полигонов нет смежных соседей, им будут назначены не смежные, а близкие соседи.

Long
Weights_Matrix_File
(дополнительно)

Путь к файлу, который содержит пространственные веса, которые определяют пространственные отношения между объектами.

File
Initialization_Method
(дополнительно)

Указывает, как получаются начальные значения, если для параметра Пространственные ограничения (Spatial Constraints) задано значение NO_SPATIAL_CONSTRAINT. Начальные значения используются для создания групп. Если требуется 3 группы, анализ начнется с трех начальных объектов.

  • FIND_SEED_LOCATIONSНачальные объекты выбираются для оптимизации производительности.
  • GET_SEEDS_FROM_FIELDНенулевые записи в поле инициализации будут использоваться как начальные точки для наращивания групп.
  • USE_RANDOM_SEEDSНачальные объекты выбираются случайным образом.
String
Initialization_Field
(дополнительно)

Числовое поле, определяющее начальные объекты. Объекты, для которых это поле имеет значение 1, используются для создания групп.

Field
Output_Report_File
(дополнительно)

Полный путь к создаваемому PDF-файлу отчета со сводкой характеристик групп. Данный отчет содержит ряд графиков, помогающих сравнить характеристики каждой группы. Создание файла отчета может значительно увеличить время обработки.

File
Evaluate_Optimal_Number_of_Groups
(дополнительно)
  • EVALUATEОцениваются группы 2-15.
  • DO_NOT_EVALUATEОценка числа групп не выполняется. Это значение используется по умолчанию.
Boolean

Пример кода

GroupingAnalysis. Пример 1. (окно Python)

Следующий скрипт в окне Python демонстрирует, как использовать инструмент GroupingAnalysis.

import arcpy
import arcpy.stats as SS
arcpy.env.workspace = r"C:\GA"
SS.GroupingAnalysis("Dist_Vandalism.shp", "TARGET_FID", "outGSF.shp", "4",
                    "Join_Count;TOTPOP_CY;VACANT_CY;UNEMP_CY",
                    "NO_SPATIAL_CONSRAINT", "EUCLIDEAN", "", "", "FIND_SEED_LOCATIONS", "",
                    "outGSF.pdf", "DO_NOT_EVALUATE")
GroupingAnalysis. Пример 2. (автономный скрипт Python)

Следующий автономный скрипт Python демонстрирует, как использовать инструмент GroupingAnalysis.

# Grouping Analysis of Vandalism data in a metropolitan area
# using the Grouping Analysis Tool

# Import system modules
import arcpy, os
import arcpy.stats as SS

# Set geoprocessor object property to overwrite existing output, by default
arcpy.gp.overwriteOutput = True

try:
    # Set the current workspace (to avoid having to specify the full path to
    # the feature classes each time)
    arcpy.env.workspace = r"C:\GA"

    # Join the 911 Call Point feature class to the Block Group Polygon feature class
    # Process: Spatial Join
    fieldMappings = arcpy.FieldMappings()
    fieldMappings.addTable("ReportingDistricts.shp")
    fieldMappings.addTable("Vandalism2006.shp")

    sj = arcpy.SpatialJoin_analysis("ReportingDistricts.shp", "Vandalism2006.shp", "Dist_Vand.shp",
                               "JOIN_ONE_TO_ONE",
                               "KEEP_ALL",
                               fieldMappings,
                               "COMPLETELY_CONTAINS", "", "")
    
    # Use Grouping Anlysis tool to create groups based on different variables or analysis fields
    # Process: Group Similar Features  
    ga = SS.GroupingAnalysis("Dist_Vand.shp", "TARGET_FID", "outGSF.shp", "4",
                                       "Join_Count;TOTPOP_CY;VACANT_CY;UNEMP_CY",
                                       "NO_SPATIAL_CONSRAINT", "EUCLIDEAN", "", "", "FIND_SEED_LOCATIONS", "",
                                       "outGSF.pdf", "DO_NOT_EVALUATE")
    
    # Use Summary Statistic tool to get the Mean of variables used to group
    # Process: Summary Statistics
    SumStat = arcpy.Statistics_analysis("outGSF.shp", "outSS", "Join_Count MEAN; \
                               VACANT_CY MEAN;TOTPOP_CY MEAN;UNEMP_CY MEAN", 
                                       "GSF_GROUP")

except:
    # If an error occurred when running the tool, print out the error message.
    print arcpy.GetMessages()

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

Выходная система координат (Output Coordinate System)

До начала анализа геометрия пространственных объектов проецируется в Выходную систему координат (Output Coordinate System), поэтому значения параметров Диапазон расстояний / Пороговое расстояние (Distance Band/Threshold Distance) должны быть выражены в единицах измерения, заданных в Выходной системе координат. Во всех математических вычислениях учитывается пространственная привязка Выходной системы координат (Output Coordinate System).

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

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

ArcGIS for Desktop Basic: Да
ArcGIS for Desktop Standard: Да
ArcGIS for Desktop Advanced: Да
9/11/2013