| Подпись | Описание | Тип данных |
Входные объекты | Объекты, для которых будут созданы пространственные отношения объектов. | Feature Class |
Поле уникального ID | Целочисленное поле, содержащее по уникальному значению для каждого объекта во входном классе объектов. Если у вас нет поля Уникальный ID, вы можете создать его путем добавления нового целого поля в вашу таблицу классов объектов и вычислив значения полей, которые были бы равны полям FID или OBJECTID. | Field |
Выходной файл матрицы пространственных весов | Полный путь к выходному файлу матрицы пространственных весов (.swm). | File |
Тип окрестности | Задает способ определения соседей каждого объекта.
| String |
Метод расстояний (Дополнительный) | Определяет, как рассчитываются расстояния от одного объекта до соседнего объекта.
| String |
Порядок (Дополнительный) | Значение для расчета обратного расстояния. Типичные значения – 1 или 2. | Double |
Пороговое расстояние (Дополнительный) | Пороговое расстояние для опций параметра Тип окрестности Обратное расстояние и Фиксированное расстояние. Введите это значение, используя единицы, определенные во входящей системе координат. Задает размер пространственного окна для опции Пространственно-временное окно. Когда этот параметр остается пустым, пороговое значение по умолчанию будет вычислено исходя из экстента и количества объектов во выходном классе объектов. Нулевое значение обратного расстояния пространственных отношений указывает, что пороговое расстояние не будет применяться, и все объекты будут соседями со всеми остальными объектами. | Double |
Число соседей (Дополнительный) | Целое число, показывающее или минимально или точное количество соседей. Когда параметр Тип окрестности установлен на Ближайшая окрестность K, каждый объект будет иметь точно указанное количество соседей. Для опций Обратное расстояние и Фиксированное расстояние каждый объект будет иметь как минимум это количество соседей (чтобы обеспечить это количество соседей, при необходимости пороговое расстояние будет временно увеличено). Когда выбрана опция Только совпадающие ребра или Совпадающие ребра и углы, каждому полигону будет назначено это минимальное количество соседей. Для полигонов с меньшим числом соседей, чем число соседей со смежными границами, дополнительное количество соседей определяется по принципу близости центроидов объектов. Для K ближайших соседей значение по умолчанию равно 8. Для всех остальных типов окрестностей значение по умолчанию равно 0. Это значение не включает в себя фокальные объекты, поэтому, если они будут включены, количество соседей будет на единицу больше, чем указанное значение. | Long |
Стандартизация строк (Дополнительный) | Указывает, будут ли пространственные веса стандартизированы по строкам. Нормализация ряда рекомендуется, независимо от того, распределены ли объекты потенциально предвзято в зависимости от дизайна примера или от установленной схемы агрегации.
| Boolean |
Входная таблица (Дополнительный) | Таблица, содержащая числовые значения весов между парами соседей при преобразовании таблицы в матрицу пространственных весов. Обязательными полями для таблицы являются имя поля уникального ID, NID (идентификатор соседа) и WEIGHT. | Table |
Поле даты/времени (Дополнительный) | Поле даты с отметкой времени для каждого объекта. | Field |
Тип интервала даты/времени (Дополнительный) | Задает единицы измерения времени.
| String |
Значение интервала даты/времени (Дополнительный) | Целочисленное значение количества единиц измерения времени, составляющее временной диапазон. Например, если для параметра Тип интервала даты/времени выбрано Часы, а для этого параметра задано 3, временное окно составит 3 часа. Объекты, попадающие в указанное временное окно и в указанное пространственное окно, будут считаться соседями. | Long |
Использовать Z-значения (Дополнительный) | Определяет, будут ли использоваться z-координаты при построении матрицы пространственных весов, если входные объекты имеют координату z.
| Boolean |
Порядок примыкания (Дополнительный) | Порядок примыкания полигонов. Порядок — это количество шагов, которое потребовалось бы для перехода от фокального полигона к его соседям. Значение по умолчанию равно 1, это означает, что соседними будут считаться только непосредственные соседи фокального полигона (те, до которых можно добраться за один шаг). Второй порядок означает, что все полигоны, до которых можно добраться за один или два шага (соседи первого порядка и все их соседи первого порядка), будут соседями. Это значение должно быть в диапазоне от 1 до 10; однако, как правило, рекомендуется использовать значения от 1 до 3. | Long |
Включить фокальный объект | Указывает, будет ли каждый объект считаться соседним самому себе.
| Boolean |
Метод взвешивания (Дополнительный) | Определяет метод взвешивания, который будет использоваться для определения пространственных весов соседей вокруг каждого фокального объекта.
| String |
Тип кернфункции (Дополнительный) | Определяет, будет ли ширина полосы ядра представлять собой фиксированное расстояние, разделяемое между всеми объектами, или каждый объект будет использовать свою (адаптивную) ширину полосы. Этот параметр применяется только к типу окрестностей k ближайших соседей.
| String |
Количество адаптивных ядер соседей (Дополнительный) | Для ширины полосы адаптивного ядра указывает количество соседей, которые будут использоваться для определения адаптивного ядра. Например, значение 10 означает, что ширина полосы для каждого объекта будет равна расстоянию до его десятого соседа. Значение по умолчанию — это количество соседей плюс один. Использование значения на один больше, чем количество соседей, гарантирует, что каждый сосед по умолчанию получит ненулевой вес. | Long |
Ширина ядра (Дополнительный) | Растояние ширины ядра. Если значение не будет задано, оно будет получено в процессе обработки и показано в сообщении геообработки. | Linear Unit |
Поле веса (Дополнительный) | Поле, содержащее значения веса для каждого объекта, которые будут использоваться при взвешивании по значениям поля. Все значения должны быть больше нуля, и для значений полей всегда будет выполняться стандартизация строк. | Field |
Краткая информация
Создает файл с матрицей пространственных весов (.swm) для отображения пространственных отношений между объектами в наборе данных.
Иллюстрация

Использование
Выходные данные этого инструмента – файл матрицы пространственных весов (.swm). Инструменты, которые требуют от вас указания типа окрестностей (иногда называемые концептуализацией пространственных отношений), такие как Анализ горячих точек и Бивариантная пространственная связь (L-статистика Ли), позволят определить соседей и веса, используя файл матрицы пространственных весов. Использование файла полезно, когда вы планируете выполнить несколько анализов с одинаковыми объектами (например, для больниц или округов США) или когда вы собираетесь поделиться результатами с другими пользователями.
Сообщения включают отчет о файле матрицы пространственных весов, который отображает количество объектов, связность, а также минимальное, максимальное и среднее количество соседей.
Для анализа пространства/времени выберите опцию Пространственно-временное окно для параметра Тип окрестности. Пространство задается значением Порогового расстояния; время задается значением Поле даты/времени, а также двумя значениями: Тип даты/времени (часы или дни) и Значение интервала даты/времени. Значение параметра Значение интервала даты/времени должно быть целым числом. Например, если ввести пороговое расстояние в 1000 футов, выбрать опцию Часы и задать для Значение интервала даты/времени значение 3, то соседями будут считаться объекты, расположенные один от другого в пределах 1000 футов и 3-х часов.
Для повышения быстродействия системы файл создается в двоичном формате. Отношения между пространственными объектами хранятся в виде разреженной матрицы, при этом в файл .swm записываются только ненулевые отношения. При очень большом количестве отношений (обычно это десятки или сотни миллионов отношений окрестности) могут возникать ошибки памяти. В этом случае используйте различные опции, чтобы уменьшить количество соседей для каждого объекта (например, уменьшить пороговое расстояние).
Совпадающие точки не используются в вычислении Порогового расстояния по умолчанию.
При использовании данных с координатами, включающими z-значения, единственными опциями, поддерживаемыми параметром Тип окрестности, являются Обратное расстояние, Фиксированное расстояние, Ближайшая окрестность K и Пространственно-временное окно.
Если Входной класс пространственных объектов содержит z-значения, линейные единицы измерения вертикальной системы координат (VCS) должны совпадать с линейными единицами измерения горизонтальный системы координат. Если входные объекты не имеют VCS, предполагается, что линейные вертикальные единицы измерения совпадают с горизонтальными.
Когда входные объекты не имеют проекции (т.е. когда координаты заданы в градусах широты и долготы), или когда в качестве выходной системы координат используется Географическая система координат, расстояния будут рассчитываться с помощью хордовых расстояний. Хордовые расстояния используются, поскольку они могут быть быстро вычислены и дают очень хорошие оценки истинных геодезических расстояний, примерно до 30 градусов. Для любых двух точек на сфероиде хордовым расстоянием между ними будет длина прямой линии, проходящей через трехмерное тело Земли и соединяющей эти две точки. Хордовые расстояния выражаются в метрах.
Внимание:
Проецируйте данные, если экстент области исследования превышает 30 градусов. Хордовые расстояния не обеспечивают точных оценок геодезических расстояний, превышающих 30 градусов.
Когда при анализе используются хордовые расстояния, пороговое расстояние должно быть указано в метрах.
-
Для линейных или полигональных объектов, при расчете расстояний используются центроиды. Для мультиточек, полилиний или полигонов, состоящих их нескольких частей, центроид вычисляется с использованием средневзвешенного центра всех частей объекта. При определении весов точечные объекты имеют равный вес (1). Для линейных объектов это длина сегмента. Для полигональных – площадь.
Значение параметра Поле Уникальный ID связано с отношениями объектов, полученными в результате работы данного инструмента. Следовательно, значения поля уникального ID должны быть уникальными для каждого объекта и, как правило, должно хранится в постоянном поле, которое не меняется в классе объектов. Если у вас нет поля уникального ID, его можно создать, добавив новое целочисленное поле (Добавить поле) к классу объектов и вычислив значения поля равным полю FID или OBJECTID (Вычислить поле). Поскольку значения полей FID и OBJECTID могут изменяться при копировании и редактировании класса объектов, рекомендуется не использовать эти поля в качестве поля уникального ID.
Параметр Количество соседей может перевесить параметр Пороговое расстояние для типов окрестностей с обратным или фиксированным расстоянием. Например, если вы зададите пороговое расстояние в 10 миль и значение 3 для параметра Количество соседей, то каждый из объектов будут иметь минимум по три соседа, даже если для того, чтобы найти их, пришлось бы увеличить пороговое расстояние. Пороговое расстояние увеличивается только в тех случаях, где минимальное число соседей не найдено.
Опция Конвертировать таблицу для параметра Тип окрестности может быть использована для конвертации ASCII-файла матрицы пространственных весов в SWM-файл матрицы пространственных весов. Сначала вставьте ваш ASCII-файл с весами в форматированную таблицу (например, с помощью Microsoft Excel).
Для полигональных объектов рекомендуется отметить параметр Стандартизация строк. Стандартизация строк нивелирует отклонение в ситуациях, когда количество соседей каждого объекта является функцией агрегирования или выборки, нежели отражением реального пространственного распределения анализируемой переменной.
-
Дополнительную информацию о параметрах инструмента см. в справочной статье Моделирование пространственных отношений.
Инструменты, которые могут использовать файл матрицы пространственных весов, перед анализом проецируют объекты в выходную систему координат, поэтому все математические вычисления основаны на выходной системе координат. Как следствие, если выходная система координат не соответствует пространственной привязке входного класса объектов, следует выполнить одно из двух: либо сделать так, чтобы для всех операций анализа, использующих файл матрицы пространственных весов, выходная система координат соответствовала тем настройкам, которые применялись при создании этого файла; либо проецировать входной класс объектов так, чтобы он соответствовал пространственной привязке файла матрицы пространственных весов.
Внимание:
При использовании шейп-файлов, помните, что в них нельзя хранить нулевые (null) значения. Инструменты или другие процедуры, создающие шейп-файлы из прочих входных данных, могут хранить значения NULL в виде 0 или оперировать ими как нулем. В некоторых случаях нули в шейп-файлах хранятся как очень маленькие отрицательные числа. Это может привести к неожиданным результатам. Дополнительные сведения см. в разделе Рекомендации по геообработке выходных данных шейп-файла.
Параметры
arcpy.stats.GenerateSpatialWeightsMatrix(Input_Feature_Class, Unique_ID_Field, Output_Spatial_Weights_Matrix_File, Conceptualization_of_Spatial_Relationships, {Distance_Method}, {Exponent}, {Threshold_Distance}, {Number_of_Neighbors}, {Row_Standardization}, {Input_Table}, {Date_Time_Field}, {Date_Time_Interval_Type}, {Date_Time_Interval_Value}, {Use_Z_values}, {order}, include_focal_feature, {weighting_method}, {kernel_type}, {adaptive_neighbors}, {kernel_bandwidth}, {weight_field})| Имя | Описание | Тип данных |
Input_Feature_Class | Объекты, для которых будут созданы пространственные отношения объектов. | Feature Class |
Unique_ID_Field | Целочисленное поле, содержащее по уникальному значению для каждого объекта во входном классе объектов. Если у вас нет поля Уникальный ID, вы можете создать его путем добавления нового целого поля в вашу таблицу классов объектов и вычислив значения полей, которые были бы равны полям FID или OBJECTID. | Field |
Output_Spatial_Weights_Matrix_File | Полный путь к выходному файлу матрицы пространственных весов (.swm). | File |
Conceptualization_of_Spatial_Relationships | Задает способ определения соседей каждого объекта.
| String |
Distance_Method (Дополнительный) | Определяет, как рассчитываются расстояния от одного объекта до соседнего объекта.
| String |
Exponent (Дополнительный) | Значение для расчета обратного расстояния. Типичные значения – 1 или 2. | Double |
Threshold_Distance (Дополнительный) | Пороговое расстояние для опций INVERSE_DISTANCE и FIXED_DISTANCE параметра Conceptualization_of_Spatial_Relationships. Введите это значение, используя единицы, определенные во входящей системе координат. Задает размер пространственного окна для опции SPACE_TIME_WINDOW. Когда этот параметр остается пустым, пороговое значение по умолчанию будет вычислено исходя из экстента и количества объектов во выходном классе объектов. Нулевое значение обратного расстояния пространственных отношений указывает, что пороговое расстояние не будет применяться, и все объекты будут соседями со всеми остальными объектами. | Double |
Number_of_Neighbors (Дополнительный) | Целое число, показывающее или минимально или точное количество соседей. Когда параметр Conceptualization_of_Spatial_Relationships задан как K_NEAREST_NEIGHBORS, каждый объект будет иметь это точно указанное количество соседей. Для опций INVERSE_DISTANCE и FIXED_DISTANCE каждый объект будет иметь по крайней мере это заданное количество соседей, (для этого, если потребуется, пороговое расстояние будет временно увеличено). Когда выбрана опция CONTIGUITY_EDGES_ONLY или CONTIGUITY_EDGES_CORNERS, каждому полигону будет назначено это минимальное количество соседей. Для полигонов с меньшим числом соседей, чем число соседей со смежными границами, дополнительное количество соседей определяется по принципу близости центроидов объектов. Для K_NEAREST_NEIGHBORS значение по умолчанию – 8. Для всех остальных типов окрестностей значение по умолчанию равно 0. Это значение не включает в себя фокальные объекты, поэтому, если они будут включены, количество соседей будет на единицу больше, чем указанное значение. | Long |
Row_Standardization (Дополнительный) | Указывает, будут ли пространственные веса стандартизированы по строкам. Нормализация ряда рекомендуется, независимо от того, распределены ли объекты потенциально предвзято в зависимости от дизайна примера или от установленной схемы агрегации.
| Boolean |
Input_Table (Дополнительный) | Таблица, содержащая числовые значения весов между парами соседей при преобразовании таблицы в матрицу пространственных весов. Обязательными полями для таблицы являются имя поля уникального ID, NID (идентификатор соседа) и WEIGHT. | Table |
Date_Time_Field (Дополнительный) | Поле даты с отметкой времени для каждого объекта. | Field |
Date_Time_Interval_Type (Дополнительный) | Задает единицы измерения времени.
| String |
Date_Time_Interval_Value (Дополнительный) | Целочисленное значение количества единиц измерения времени, составляющее временной диапазон. Например, если для параметра Date_Time_Interval_Type выбрано HOURS, а параметр задан равным 3, временное окно составит три часа. Объекты, попадающие в указанное временное окно и в указанное пространственное окно, будут считаться соседями. | Long |
Use_Z_values (Дополнительный) | Определяет, будут ли использоваться z-координаты при построении матрицы пространственных весов, если входные объекты имеют координату z.
| Boolean |
order (Дополнительный) | Порядок примыкания полигонов. Порядок — это количество шагов, которое потребовалось бы для перехода от фокального полигона к его соседям. Значение по умолчанию равно 1, это означает, что соседними будут считаться только непосредственные соседи фокального полигона (те, до которых можно добраться за один шаг). Второй порядок означает, что все полигоны, до которых можно добраться за один или два шага (соседи первого порядка и все их соседи первого порядка), будут соседями. Это значение должно быть в диапазоне от 1 до 10; однако, как правило, рекомендуется использовать значения от 1 до 3. | Long |
include_focal_feature | Указывает, будет ли каждый объект считаться соседним самому себе.
| Boolean |
weighting_method (Дополнительный) | Определяет метод взвешивания, который будет использоваться для определения пространственных весов соседей вокруг каждого фокального объекта.
| String |
kernel_type (Дополнительный) | Определяет, будет ли ширина полосы ядра представлять собой фиксированное расстояние, разделяемое между всеми объектами, или каждый объект будет использовать свою (адаптивную) ширину полосы. Этот параметр применяется только к типу окрестностей k ближайших соседей.
| String |
adaptive_neighbors (Дополнительный) | Для ширины полосы адаптивного ядра указывает количество соседей, которые будут использоваться для определения адаптивного ядра. Например, значение 10 означает, что ширина полосы для каждого объекта будет равна расстоянию до его десятого соседа. Значение по умолчанию — это количество соседей плюс один. Использование значения на один больше, чем количество соседей, гарантирует, что каждый сосед по умолчанию получит ненулевой вес. | Long |
kernel_bandwidth (Дополнительный) | Растояние ширины ядра. Если значение не будет задано, оно будет получено в процессе обработки и показано в сообщении геообработки. | Linear Unit |
weight_field (Дополнительный) | Поле, содержащее значения веса для каждого объекта, которые будут использоваться при взвешивании по значениям поля. Все значения должны быть больше нуля, и для значений полей всегда будет выполняться стандартизация строк. | Field |
Пример кода
Скрипт окна Python, демонстрирующий использование функции GenerateSpatialWeightsMatrix.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.stats.GenerateSpatialWeightsMatrix(
"911Count.shp", "MYID", "euclidean6Neighs.swm", "K_NEAREST_NEIGHBORS", "#",
"#", "#", 6, "NO_STANDARDIZATION")В следующем автономном скрипте Python показано использование функции GenerateSpatialWeightsMatrix.
# 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"
# 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
arcpy.management.CopyFeatures(
"911Calls.shp", "911Copied.shp")
arcpy.management.Integrate("911Copied.shp #", "500 Feet")
# Use Collect Events to count the number of calls at each location.
# Process: Collect Events
arcpy.stats.CollectEvents("911Copied.shp", "911Count.shp", "Count", "#")
# Add a unique ID field to the count feature class.
# Process: Add Field and Calculate Field
arcpy.management.AddField(
"911Count.shp", "MyID", "LONG", "#", "#", "#", "#", "NON_NULLABLE",
"NON_REQUIRED", "#", "911Count.shp")
arcpy.management.CalculateField("911Count.shp", "MyID", "[FID]", "VB")
# Create Spatial Weights Matrix for Calculations.
# Process: Generate Spatial Weights Matrix...
arcpy.stats.GenerateSpatialWeightsMatrix(
"911Count.shp", "MYID", "euclidean6Neighs.swm", "K_NEAREST_NEIGHBORS", "#",
"#", "#", 6, "NO_STANDARDIZATION")
# Hot Spot Analysis of 911 Calls.
# Process: Hot Spot Analysis (Getis-Ord Gi*)
arcpy.stats.HotSpots(
"911Count.shp", "ICOUNT", "911HotSpots.shp",
"GET_SPATIAL_WEIGHTS_FROM_FILE", "EUCLIDEAN_DISTANCE", "NONE", "#", "#",
"euclidean6Neighs.swm")Параметры среды
Особые случаи
- Выходная система координат
Геометрия пространственных объектов проецируется в выходную систему координат до начала анализа, поэтому значения параметра Пороговое расстояние должны быть выражены в единицах измерения, заданных в выходной системе координат. Все математическое вычисления основаны на пространственной привязке выходной системы координат. Если выходная система координат выражена в градусах, минутах и секундах, геодезические расстояния рассчитываются с помощью хордовых расстояний в метрах.
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да
Связанные разделы
- Обзор группы инструментов Моделирование пространственных отношений
- Поиск инструмента геообработки
- Как работает инструмент Географически взвешенная регрессия
- Пространственная автокорреляция (Глобальный индекс Морана I)
- Кластеризация с высокими/низкими значениями (Глобальный индекс Getis-Ord G)
- Анализ кластеров и выбросов (Anselin Локальный индекс Морана I)
- Анализ горячих точек
- Анализ группирования
- Пространственные веса
- Моделирование пространственных отношений
- Как работает инструмент Построить матрицу пространственных весов для сети