Анализ кластеров и выбросов (Anselin Локальный индекс Морана I) (Пространственная статистика)
Краткая информация
Приведенный набор взвешенных объектов, определяет статистическую значимость "горячих" точек и "холодных" точек на основе статистического показателя Anselin Локальный индекс Морана I.
Более подробно о том, как работает Анализ кластеров и выбросов (Anselin Локальный индекс Морана I)
Рисунок
Использование
-
Инструмент создает новый Выходной класс объектов со следующими атрибутами для каждого объекта в Входном классе объектов:: локальный индекс Морана I, z-оценка, p-значение, тип кластера/выбросов (COType).
-
Z-оценки и р-значения являются измерениями статистической значимости, которая говорит вам, можно ли отклонить нулевую гипотезу. В действительности, они показывают, насколько очевидное сходство (пространственная кластеризация) или несходство (пространственные выбросы) являются чем-то большим, нежели случайное распределение. P-значения и z-оценки в Выходном классе пространственных объектов (Output Feature Class) не отражают исправления FDR (False Discovery Rate).
-
Высокое положительное значение z-оценки для объекта свидетельствует, что окружающие объекты имеют схожие значения (либо низкие, либо высокие). Поле COType в Выходном классе объектов (Output Feature Class) будет содержать значение HH для статистически значимого кластера с высокими значениями и LL для статистически значимого кластера с низкими значениями.
-
Малое отрицательное значение z-оценки (например, менее -3,96) для объекта свидетельствует о статистической значимости пространственных выбросов в данных. Поле COType в Выходном классе объектов (Output Feature Class) имеет значение HL для объекта с высоким значением, окруженного объектами с низкими значениями, и LH для объекта с низкими значениями, окруженного объектами с высокими значениями.
В поле COType всегда указываются статистические значимые кластеры и выбросы с достоверностью 95 %. Только статистически значимые объекты имеют значения, указанные в поле COType. При включении дополнительного параметра Применить коррекцию FDR (Apply False Discovery Rate (FDR) Correction), статистическая значимость основывается на корректированном 95-процентном уровне достоверности.
Метод отображения по умолчанию Выходного класса пространственных объектов (Output Feature Class) основывается на значениях в поле COType.
-
z-оценка основана на вычислении гипотезы нулевой рандомизации. Дополнительные сведения о z-оценке см. в разделе Что такое z-оценка? Что такое p-значение?
Когда Входной класс объектов (Input Feature Class) не имеет проекции (т.е. когда координаты заданы в градусах, минутах и секундах), или когда в качестве выходной системы координат (output coordinate system) используется Географическая система координат (Geographic Coordinate System), расстояния в этих случаях будут рассчитываться с помощью хордовых измерений. Измерения хордовых расстояний применяются постольку, поскольку они могут быть быстро вычислены и дают очень хорошие оценки истинных геодезических расстояний, по крайней мере для точек, расстояние между которыми в пределах порядка тридцати градусов. В основе хордовых расстояний лежит скорее сфероид, чем форма сплющенного у полюсов эллипсоида Земли. Если взять две любые точки на поверхности Земли, то хордовым расстоянием между ними будет длина прямой линии, проходящей через трехмерное тело Земли и соединяющей эти две точки. Хордовые расстояния выражаются в метрах.
Внимание:Следует обязательно производить проецирование своих данных, если область исследования превышает 30 градусов. Хордовые расстояния не обеспечивают точных оценок геодезических расстояний, превышающих 30 градусов.
Когда при анализе используются хордовые расстояния, параметр Диапазон расстояний или пороговое расстояние (Distance Band or Threshold Distance), если он указывается, должен быть выражен в метрах.
В более ранних версиях, чем ArcGIS 10.2.1, вы бы увидели предупреждение о том, что выбранные вами параметры и системные настройки предполагают проведение вычислений на основе географических координат (градусы, минуты, секунды). Увидев это предупреждение, необходимо было произвести проецирование данных в Систему координат проекции для того, чтобы вычисление расстояний было точным. Однако, начиная с версии 10.2.1, этот инструмент рассчитывает хордовые расстояния для всех случаев, когда требуются вычисления в географической системе координат.
Внимание:Из-за этого изменения имеется небольшая вероятность того, что вам потребуется изменить модели с участием этого инструмента, если эти модели были созданы до выхода версии ArcGIS 10.2.1 и если в эти модели включены жестко-запрограммированные значения параметров Географической системы координат (Geographic Coordinate System). К примеру, если параметр расстояния установлен на что-то вроде 0,0025 градуса, то вам потребуется конвертировать это значение из градусов в метры и заново сохранить свою модель.
-
Для линейных или полигональных объектов, при расчете расстояний используются центроиды. Для мультиточек, полилиний или полигонов, состоящих их нескольких частей, центроид вычисляется с использованием средневзвешенного центра всех частей объекта. При определении весов точечные объекты имеют равный вес (1). Для линейных объектов это длина сегмента. Для полигональных – площадь.
-
Входное поле (Input Field) должно содержать разные значения. Для математических расчетов, выполняемых в рамках этих статистических операций, требуется, чтобы исходные переменные были разными. Например, анализ не будет выполняться, если все входящие значения равны 1. Если вы хотите использовать данный инструмент для анализа пространственных закономерностей случайных данных, попробуйте агрегировать ваши случайные данные. Для анализа пространственных закономерностей случайных данных может также использоваться инструмент Оптимизированный анализ горячих точек (Optimized Hot Spot Analysis).
Примечание:Инцидентными данными являются точки, представляющие события (преступление, дорожно-транспортное происшествие) или объекты (деревья, магазины), по отношению к которым ваше внимание концентрируется скорее на их наличии или отсутствии, чем на атрибутах, свойственных каждой такой точке.
-
Выбор параметра Определение пространственных взаимоотношений (Conceptualization of Spatial Relationships) должен отражать внутренние отношения между пространственными объектами, которые вы анализируете. Чем более точно вы сможете смоделировать взаимодействие пространственных объектов в пространстве, тем более точные результаты вы получите. Рекомендации см. в разделе Выбор Концептуализации пространственных отношений: рекомендации. Ниже приводится несколько дополнительных советов:
- FIXED_DISTANCE_BAND
Значение по умолчанию для параметра Диапазон расстояний или пороговое расстояние (Distance Band or Threshold Distance) гарантирует, что каждый объект имеет, по крайней мере, одного соседа, и это важно. Но часто значение, заданное по умолчанию, не будет наиболее подходящим расстоянием для вашего анализа. В разделе Выбор фиксированного расстояния приведены стратегии, которые помогут определить значение диапазона расстояний, подходящее для вашего анализа.
- INVERSE_DISTANCE или INVERSE_DISTANCE_SQUARED
Когда для параметра Диапазон расстояний или пороговое расстояние (Distance Band or Threshold Distance) указано значение 0, все объекты считаются соседями всех других объектов. Когда этот параметр остается пустым, применяется пороговое значение по умолчанию.
Веса для расстояний менее 1 становятся не стабильны после обращения. Следовательно, при взвешивании для объектов, разделенных менее чем одной единицей расстояния, получают вес 1.
При использовании опции обратного расстояния (INVERSE_DISTANCE, INVERSE_DISTANCE_SQUARED, or ZONE_OF_INDIFFERENCE) любым двум совпадающим точкам придается значение веса 1 во избежание деления на 0. Это будет гарантировать, что объекты не исключены из анализа.
- FIXED_DISTANCE_BAND
-
Для параметра Определение пространственных взаимоотношений (Conceptualization of Spatial Relationships) при использовании инструментов Построить матрицу пространственных весов или Построить матрицу пространственных весов для сети доступны дополнительные опции, в том числе пространственно-временные отношения. Чтобы эффективно воспользоваться этими дополнительными опциями, с помощью одного из этих инструментов создайте файл с матрицей пространственных весов до выполнения анализа, выберите значение GET_SPATIAL_WEIGHTS_FROM_FILE для параметра Определение пространственных взаимоотношений (Conceptualization of Spatial Relationships), а для параметра Файл матрицы весов (Weights Matrix File) задайте путь к файлу с пространственными весами, который вы создали.
Дополнительные сведения о пространственно-временном кластерном анализе см. в документе Пространственно-временной анализ.
-
Слои карты можно использовать для определения Входного класса объектов (Input Feature Class). Если в слое есть выборка, только выбранные объекты будут включены в анализ.
Если добавлен Файл матрицы весов (Weights Matrix File) с расширением SWM, этот инструмент предполагает получения файла матрицы весов, созданного либо с помощью инструмента Построить матрицу пространственных весов (Generate Spatial Weights Matrix), либо Построить матрицу пространственных весов для сети (Generate Network Spatial Weights); в противном случае инструмент ожидает файл матрицы весов в формате ASCII (ASCII-formatted spatial weights matrix file). В некоторых случаях, поведение различно в зависимости от типа использованной матрицы весов:
- ASCII-файлы с матрицей пространственных весов:
- Веса используются без изменений. Отсутствующие отношения объект к объекту рассматриваются как нули.
- Если веса нормализованы, то вероятнее всего, что результаты будут непригодны для анализа выбранного набора. Если вам нужно выполнить анализ выбранного набора данных, конвертируйте ASCII-файл с матрицей весов в SWM-файл посредством перенесения данных ASCII-файла в таблицу и используя опцию CONVERT_TABLE инструмента Построить матрицу пространственных весов (Generate Spatial Weights Matrix).
- Матрица пространственных весов в формате SWM:
- Если веса уже были нормализованы, то они будут нормализованы вновь для выбранного набора данных. В противном случае они будут использоваться без изменений.
- ASCII-файлы с матрицей пространственных весов:
Для выполнения анализа с ASCII-файлом с матрицей пространственных весов требуется большой объем памяти. При анализе более 5000 объектов ASCII-файл с матрицей пространственных весов следует конвертировать в SWM-файл. Сначала вы вставляете ваш ASCII-файл с весами в форматированную таблицу (например, с помощью Excel). Затем запускаете инструмент Построить матрицу пространственных весов, задав значение CONVERT_TABLE для параметра Определение пространственных взаимоотношений (Conceptualization of Spatial Relationships). В результате будет создан файл формата SWM с матрицей пространственных весов.
-
При запуске инструмента в ArcMap, Выходной класс объектов (Output Feature Class) автоматически добавляется в таблицу содержания с методом отображения по умолчанию, примененным для поля COType. Применяемый метод отображения определен файлом слоя в папке <ArcGIS>/Desktop10.x/ArcToolbox/Templates/Layers. Метод отображения по умолчанию, если это необходимо, можно применить заново путем импорта символов слоя шаблона.
Выходной класс объектов содержит поле SOURCE_ID, которое позволяет при необходимости присоединить его к Входному классу объектов.
-
Дополнительную информацию о параметрах инструмента см. в справочной статье Моделирование пространственных отношений.
При использовании этого инструмента в скрипте Python, объект-результат, возвращенный инструментом, содержит следующие выходные данные:
Положение
Описание
Тип данных
0
Выходной класс пространственных объектов
Класс пространственных объектов
1
Имя поля индексов
Поле
2
Имя поля Z-оценки
Поле
3
Имя поля вероятности
Поле
4
Имя поля Тип кластерных выбросов
Поле
5
Имя поля ID источника
Поле
При использовании шейп-файлов, помните, что в них нельзя хранить нулевые (null) значения. Инструменты или другие процедуры, создающие шейп-файлы из прочих входных данных, могут хранить значения NULL в виде 0 или оперировать ими как нулем. В некоторых случаях нули в шейп-файлах хранятся как очень маленькие отрицательные числа. Это может привести к неожиданным результатам. Дополнительные сведения см. в разделе Рекомендации по геообработке выходных данных шейп-файла.
До выхода ArcGIS 10.0 выходной класс объектов дублировал входной класс объектов с добавленными значениями COType, z-оценки (z-score) и р-значения (p-value). После выхода ArcGIS 10.0 выходной класс объектов содержит только результаты и поля, используемые в анализе.
Синтаксис
Параметр | Объяснение | Тип данных |
Input_Feature_Class |
Класс пространственных объектов, для которых будет выполняться анализ кластеров/выбросов. | Feature Layer |
Input_Field |
Числовое поле, которое должно быть оценено. | Field |
Output_Feature_Class |
Выходной класс объектов для представления полей с результатами. | Feature Class |
Conceptualization_of_Spatial_Relationships |
Определяет, как концептуализированы пространственные отношения между объектами.
| String |
Distance_Method |
Определяет, как рассчитываются расстояния от одного объекта до соседнего объекта.
| String |
Standardization |
Нормализация ряда рекомендуется, независимо от того, распределены ли объекты потенциально предвзято в зависимости от дизайна примера или от установленной схемы агрегации.
| String |
Distance_Band_or_Threshold_Distance (дополнительно) |
Определяет пороговое значение расстояния для параметров Обратное расстояние и Фиксированное расстояние. Объекты, расположенные вне указанной области, игнорируются при анализе этого объекта. Однако для Зоны индифферентности, влияние объектов, расположенных вне приведенного расстояния сокращается с расстоянием, в то время как влияние тех объектов, которые располагаются в пределах порогового расстояния, распределяется равномерно. Введенное значение расстояния должно соответствовать выходной системе координат. При использовании концептуализации Обратных расстояний для вычисления пространственных отношений, значение 0 обозначает, что пороговое расстояние не применялось; когда данный параметр остается пустым, пороговое значение по умолчанию рассчитывается и применяется при анализе. Значение по умолчанию – это Евклидово расстояние, которое гарантирует каждому объекту как минимум 1 соседа. Этот параметр не эффективен, когда выбраны концептуализации Близость полигонов или Получить пространственные веса из файла. | Double |
Weights_Matrix_File (дополнительно) |
Путь к файлу, который содержит веса, определяющие пространственные и, возможно, временные отношения между объектами. | File |
Apply_False_Discovery_Rate__FDR__Correction (дополнительно) |
| Boolean |
Пример кода
Следующий скрипт, представленный в окне Python, демонстрирует использование инструмента ClusterandOutlierAnalysis.
import arcpy
arcpy.env.workspace = "c:/data/911calls"
arcpy.ClustersOutliers_stats("911Count.shp", "ICOUNT","911ClusterOutlier.shp",
"GET_SPATIAL_WEIGHTS_FROM_FILE","EUCLIDEAN_DISTANCE",
"NONE","#", "euclidean6Neighs.swm","NO_FDR")
Следующий автономный Python скрипт демонстрирует, как использовать инструмент ClusterandOutlierAnalysis.
# Analyze the spatial distribution of 911 calls in a metropolitan area
# using the Cluster-Outlier Analysis Tool (Anselin's Local Moran's I)
# Import system modules
import arcpy
# Set geoprocessor object property to overwrite outputs if they already exist
arcpy.gp.OverwriteOutput = True
# Local variables...
workspace = r"C:\Data\911Calls"
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",
"#", 0, 0, 0)
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]", "VB")
# Create Spatial Weights Matrix for Calculations
# Process: Generate Spatial Weights Matrix...
swm = arcpy.GenerateSpatialWeightsMatrix_stats("911Count.shp", "MYID",
"euclidean6Neighs.swm",
"K_NEAREST_NEIGHBORS",
"#", "#", "#", 6)
# Cluster/Outlier Analysis of 911 Calls
# Process: Local Moran's I
clusters = arcpy.ClustersOutliers_stats("911Count.shp", "ICOUNT",
"911ClusterOutlier.shp",
"GET_SPATIAL_WEIGHTS_FROM_FILE",
"EUCLIDEAN_DISTANCE", "NONE",
"#", "euclidean6Neighs.swm","NO_FDR")
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 or Threshold Distance) должны быть выражены в единицах измерения, заданных в Выходной системе координат (Output Coordinate System). Все математическое вычисления основаны на пространственной привязке Выходной системы координат (Output Coordinate System). Если выходная система координат выражена в градусах, минутах и секундах, геодезические расстояния рассчитываются с помощью хордовых расстояний в метрах.