Собрать события (Пространственная статистика)

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

Конвертирует данные о событиях, такие как преступления или случаи заболеваний, во взвешенные точечные данные.

Иллюстрация

Иллюстрация инструмента Собрать события (Collect Events)

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

  • Инструмент Собрать события (Collect Events) объединяет совпадающие точки: он создает новый Выходной класс объектов (Output Feature Class), содержащий все уникальные местоположения, найденные во Входном классе объектов (Input Feature Class). Затем он добавляет поле ICOUNT для хранения суммы всех инцидентов в каждом уникальном местоположении.

  • Инструмент объединяет только те объекты, которые имеют в точности одинаковые координаты X и Y центроида. Для замыкания близко расположенных объектов друг на друга перед запуском инструмента Собрать события (Collect Events) можно применить инструмент Интегрировать (Integrate).

    Внимание:

    Инструмент Интегрировать (Integrate) навсегда изменяет геометрию объектов; следует всегда делать резервную копию класса пространственных объектов перед запуском инструмента Интегрировать.

  • В частности, инструменты Анализ горячих точек (Getis-Ord Gi*), Анализ кластеров и выбросов (Локальный индекс I Морана) и Пространственная автокорреляция (Общий индекс I Морана) требуют взвешенные точки, а не отдельные случаи. Инструмент Собрать события (Collect Events) может быть использован для создания весов, когда входной класс объектов состоит из совпадающих объектов.

  • Хотя этот инструмент работает с полигональными или линейными данными, он наилучшим образом подходит для событий, случаев и других точечных данных. Для линейных и полигональных объектов, совпадение объектов основано для совпадения геометрических центроидов объектов. Для мультиточек, полилиний или полигонов, состоящих их нескольких частей, центроиды рассчитываются как средневзвешенное среднее значение центра всех частей объекта. При определении весов точечные объекты имеют равный вес (1). Для линейных объектов это длина сегмента. Для полигональных – площадь.

  • Когда Входной класс объектов не имеет проекции (т.е. когда координаты заданы в градусах, минутах и секундах), или когда в качестве выходной системы координат используется Географическая система координат, расстояния будут рассчитываться с помощью хордовых измерений. Измерения хордовых расстояний применяются постольку, поскольку они могут быть быстро вычислены и дают очень хорошие оценки истинных геодезических расстояний, по крайней мере, для точек, расстояние между которыми в пределах порядка тридцати градусов. Хордовые расстояния основаны на эллипсоиде вращения. Если взять две любые точки на поверхности Земли, то хордовым расстоянием между ними будет длина прямой линии, проходящей через трехмерное тело Земли и соединяющей эти две точки. Хордовые расстояния выражаются в метрах.

    Внимание:

    Следует обязательно производить проецирование ваших данных, если область исследования превышает 30 градусов. Хордовые расстояния не обеспечивают точных оценок геодезических расстояний, превышающих 30 градусов.

  • Если следует рассматривать каждую отдельную точку в облаке точек или каждую часть составного объекта как простой объект, следует вначале запустить инструмент Составной в простые (Multipart to Singlepart), а затем для полученного класса простых объектов Собрать события (Collect Events). Дополнительная информация приведена в разделе Обработка данных мультиточек.

  • В дополнение к Выходному классу объектов (Output Feature Class), эта функция выводит (в качестве производных выходных значений) имя поля, содержащего количество объектов, а также максимальное количество объектов на одно местоположение. Эти полученные выходные значения очень полезны, когда вы используете этот инструмент в моделях или скриптах.

  • При запуске инструмента в ArcMap, выходной класс объектов автоматически добавляется к таблице содержания с методом отображения по умолчанию, примененного к полю ICOUNT. Отображение градуированного цветового круга определяется файлом слоя в <ArcGIS Pro>\Resources\ArcToolBox\Templates\Layers. Способ отображения по умолчанию, если это необходимо, можно применить заново путем изменения символов слоя шаблона.

Параметры

ПодписьОписаниеТип данных
Входные объекты событий

Объекты, отражающие данные о событиях или случайные данные.

Feature Layer
Выходной класс взвешенных точечных объектов

Выходной класс объектов, который содержит взвешенные точечные данные.

Feature Class

Производные выходные данные

ПодписьОписаниеТип данных
Поле результатов

Имя поля количества

Field
Макс. значение Z

Значение максимального количества, найденного в любом из местоположений.

Double

arcpy.stats.CollectEvents(Input_Incident_Features, Output_Weighted_Point_Feature_Class)
ИмяОписаниеТип данных
Input_Incident_Features

Объекты, отражающие данные о событиях или случайные данные.

Feature Layer
Output_Weighted_Point_Feature_Class

Выходной класс объектов, который содержит взвешенные точечные данные.

Feature Class

Производные выходные данные

ИмяОписаниеТип данных
Results_Field

Имя поля количества

Field
Z_Max_Value

Значение максимального количества, найденного в любом из местоположений.

Double

Пример кода

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

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

import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.CollectEvents_stats("911Copied.shp", "911Count.shp", "Count", "#")
CollectEvents, пример 2 (автономный скрипт)

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

# Analyze the spatial distribution of 911 calls in a metropolitan area
# using the Hot-Spot Analysis Tool (Local Gi*)
# Import system modules
import arcpy
# Set property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables...
workspace = "C:/Data"
try:
    # Set the current workspace (to avoid having to specify the full path to the feature classes each time)
    arcpy.env.workspace = workspace
    # Copy the input feature class and integrate the points to snap
    # together at 500 feet
    # Process: Copy Features and Integrate
    cf = arcpy.CopyFeatures_management("911Calls.shp", "911Copied.shp")
    integrate = arcpy.Integrate_management("911Copied.shp #", "500 Feet")
    # Use Collect Events to count the number of calls at each location
    # Process: Collect Events
    ce = arcpy.CollectEvents_stats("911Copied.shp", "911Count.shp", "Count", "#")
    # Add a unique ID field to the count feature class
    # Process: Add Field and Calculate Field
    af = arcpy.AddField_management("911Count.shp", "MyID", "LONG", "#", "#", "#", "#",
                     "NON_NULLABLE", "NON_REQUIRED", "#",
                     "911Count.shp")
    
    cf = arcpy.CalculateField_management("911Count.shp", "MyID", "!FID!", "PYTHON")
    # Create Spatial Weights Matrix for Calculations
    # Process: Generate Spatial Weights Matrix... 
    swm = arcpy.GenerateSpatialWeightsMatrix_stats("911Count.shp", "MYID",
                        "euclidean6Neighs.swm",
                        "K_NEAREST_NEIGHBORS",
                        "#", "#", "#", 6,
                        "NO_STANDARDIZATION") 
    # Hot Spot Analysis of 911 Calls
    # Process: Hot Spot Analysis (Getis-Ord Gi*)
    hs = arcpy.HotSpots_stats("911Count.shp", "ICOUNT", "911HotSpots.shp", 
                     "GET_SPATIAL_WEIGHTS_FROM_FILE",
                     "EUCLIDEAN_DISTANCE", "NONE",
                     "#", "#", "euclidean6Neighs.swm")
except arcpy.ExecuteError:
    # If an error occurred when running the tool, print out the error message.
    print(arcpy.GetMessages())

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

Особые случаи

Выходная система координат

До начала анализа геометрия пространственных объектов проецируется в Выходную систему координат. Во всех математических вычислениях учитывается пространственная привязка Выходной системы координат.

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

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы