Пространственная авторегрессия (Пространственная статистика)

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

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

Предположения традиционных моделей линейной регрессии часто нарушаются при использовании пространственных данных. Когда в наборе данных присутствует пространственная автокорреляция, оценки коэффициентов могут быть смещены и приводить к излишне самоуверенным выводам. Этот инструмент может быть использован для оценки модели регрессии, которая является надежной при наличии пространственной зависимости и гетероскедастичности, а также для измерения пространственных побочных эффектов. Инструмент использует множитель Лагранжа (LM), также известный как оценка Рао, в диагностических тестах для определения наиболее подходящей модели. На основе диагностики LM может быть оценена модель обычного метода наименьших квадратов (OLS), модель пространственного лага (SLM), модель пространственной ошибки (SEM) или пространственной комбинированной модели авторегрессии (SAC).

Более подробно о работе инструмента Пространственная авторегрессия

Иллюстрация

Иллюстрация инструмента Пространственная авторегрессия

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

  • Инструмент принимает только точечные и полигональные входные данные.

  • Зависимая переменная должна быть непрерывной (не бинарной или категорийной).

  • Независимые переменные должны быть непрерывными (не бинарными и не категорийными). Не используйте бинарные переменные (содержащие только значения 0 и 1), так как они могут нарушать допущения модели и вызывать ошибку.

  • Выходные данные инструмента включают в себя диаграмма рассеяния Морана для невязок, которая может быть использована для определения автокорреляции в невязках модели.

  • Используемая матрица пространственных весов не может иметь связности более чем на 30 процентов. При достижении этого порогового значения для предотвращения предвзятых оценок возникнет ошибка.

  • При использовании k ближайших соседей с локальной схемой взвешивания будет рассчитана адаптивная полоса пропускания, если полоса пропускания не задана.

  • Пространственная модель Дурбина может быть оценена путем подгонки SLM и включения каждой независимой переменной и их пространственных лагов. Иллюстрация инструмента Суммарная статистика окрестности для вычисления пространственного лага.

  • Модели оцениваются с использованием следующих методов, связанных с гетероскедастичностью и нормальностью:

    • SLM использует регрессию Spatial Two Stage Least Squares regression(S2SLS).
    • SEM использует Generalized Method of Moments (GMM).
    • SAC использует Generalized S2SLS (GS2SLS).

Параметры

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

Входные объекты, содержащие зависимые и независимые переменные.

Feature Layer
Зависимая переменная

Числовое поле, которое будет спрогнозировано в регрессионной модели.

Field
Независимые переменные

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

Field
Выходные объекты

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

Feature Class
Тип модели

Тип модели, который будет использоваться для оценки. По умолчанию для определения модели, наиболее подходящей для входных данных, будут использоваться диагностические тесты LM.

  • АвтоопределениеДиагностические тесты LM будут использоваться для определения того, будет ли выполняться оценка OLS, SLM, SEM или SAC. Это значение по умолчанию
  • Модель пространственной ошибки (SEM)SEM будет оцениваться независимо от результатов диагностики LM.
  • Модель пространственного лага (SLM)SLM будет оцениваться независимо от результатов диагностики LM.
  • Пространственная комбинированная авторегрессия (SAC)SAC будет оцениваться независимо от результатов диагностики LM.
String
Тип окрестности
(Дополнительный)

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

  • Полоса фиксированных расстоянийК соседям будут отнесены объекты, находящиеся от каждого объекта в пределах заданного расстояния.
  • K ближайших соседейБлижайшие k объекты будут рассматриваться как соседи. Количество соседей указывается с помощью параметра Количество соседей.
  • Только совпадающие ребраК соседям будут отнесены полигональные объекты, имеющие общие ребра.
  • Совпадающие ребра и углыК соседям будут отнесены полигональные объекты, имеющие общие ребра или углы. Для полигональных объектов эта опция используется по умолчанию.
  • Триангуляция ДелонеОбъекты, у которых в триангуляции Делоне есть общее ребро или угол, будут считаться соседними. Для точечных объектов эта опция используется по умолчанию.
  • Получить пространственные веса из файлаСоседи и веса будут определены в указанном файле пространственных весов. Файл задается с помощью параметра Файл матрицы весов.
String
Диапазон расстояний
(Дополнительный)

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

Linear Unit
Число соседей
(Дополнительный)

Число соседей, которые будут использоваться как соседи. В это число не входит фокальный объект. Значение по умолчанию - 8.

Long
Файл матрицы весов
(Дополнительный)

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

File
Локальная схема весов
(Дополнительный)

Задает схему взвешивания, которая будет применяться к соседям. Веса всегда будут стандартизированы по строкам, если только не будет предоставлен файл матрицы пространственных весов.

  • Не взвешеннаяСоседям будет присвоен вес, равный 1. Это значение используется по умолчанию.
  • БиквадратнаяСоседи будут взвешены с использованием биквадратного (квартичного) ядра.
  • ГауссоваСоседи будут взвешены с использованием Гауссова ядра (нормального распределения).
String
Ширина ядра
(Дополнительный)

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

Linear Unit

arcpy.stats.SAR(in_features, dependent_variable, explanatory_variables, out_features, model_type, {neighborhood_type}, {distance_band}, {number_of_neighbors}, {weights_matrix_file}, {local_weighting_scheme}, {kernel_bandwidth})
ИмяОписаниеТип данных
in_features

Входные объекты, содержащие зависимые и независимые переменные.

Feature Layer
dependent_variable

Числовое поле, которое будет спрогнозировано в регрессионной модели.

Field
explanatory_variables
[explanatory_variables,...]

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

Field
out_features

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

Feature Class
model_type

Тип модели, который будет использоваться для оценки. По умолчанию для определения модели, наиболее подходящей для входных данных, будут использоваться диагностические тесты LM.

  • AUTOДиагностические тесты LM будут использоваться для определения того, будет ли выполняться оценка OLS, SLM, SEM или SAC. Это значение по умолчанию
  • ERRORSEM будет оцениваться независимо от результатов диагностики LM.
  • LAGSLM будет оцениваться независимо от результатов диагностики LM.
  • COMBINEDSAC будет оцениваться независимо от результатов диагностики LM.
String
neighborhood_type
(Дополнительный)

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

  • DISTANCE_BANDК соседям будут отнесены объекты, находящиеся от каждого объекта в пределах заданного расстояния.
  • K_NEAREST_NEIGHBORSБлижайшие k объекты будут рассматриваться как соседи. Количество соседей указывается с помощью параметра number_of_neighbors.
  • CONTIGUITY_EDGES_ONLYК соседям будут отнесены полигональные объекты, имеющие общие ребра.
  • CONTIGUITY_EDGES_CORNERSК соседям будут отнесены полигональные объекты, имеющие общие ребра или углы. Для полигональных объектов эта опция используется по умолчанию.
  • DELAUNAY_TRIANGULATIONОбъекты, у которых в триангуляции Делоне есть общее ребро или угол, будут считаться соседними. Для точечных объектов эта опция используется по умолчанию.
  • GET_SPATIAL_WEIGHTS_FROM_FILEСоседи и веса будут определены в указанном файле пространственных весов. Файл задается с помощью параметра weights_matrix_file.
String
distance_band
(Дополнительный)

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

Linear Unit
number_of_neighbors
(Дополнительный)

Число соседей, которые будут использоваться как соседи. В это число не входит фокальный объект. Значение по умолчанию - 8.

Long
weights_matrix_file
(Дополнительный)

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

File
local_weighting_scheme
(Дополнительный)

Задает схему взвешивания, которая будет применяться к соседям. Веса всегда будут стандартизированы по строкам, если только не будет предоставлен файл матрицы пространственных весов.

  • UNWEIGHTEDСоседям будет присвоен вес, равный 1. Это значение используется по умолчанию.
  • BISQUAREСоседи будут взвешены с использованием биквадратного (квартичного) ядра.
  • GAUSSIANСоседи будут взвешены с использованием Гауссова ядра (нормального распределения).
String
kernel_bandwidth
(Дополнительный)

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

Linear Unit

Пример кода

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

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

# Fit SAR model and auto-detect the regression model.
arcpy.stats.SAR(
    in_features=r"C:\data\data.gdb\house_price",
    dependent_variable="price",
    explanatory_variables=["crime", "income", "school_rate"],
    out_features=r"C:\data\data.gdb\house_price_SAR",
    model_type="AUTO",
    neighborhood_type="DELAUNAY_TRIANGULATION",
    distance_band=None,
    number_of_neighbors=None,
    weights_matrix_file=None,
    local_weighting_scheme="UNWEIGHTED",
    kernel_bandwidth=None
)
SAR, пример 2 (автономный скрипт)

В следующем автономном скрипте показано использование функции SAR.

# Fit SAR model using SLM.  

# Import modules
import arcpy

# Set the current workspace
arcpy.env.workspace = r"C:\data\data.gdb"


# Run SAR tool with Spatial Lag model
arcpy.stats.SAR(
    in_features=r"health_factors_CA",
    dependent_variable="Diabetes",
    explanatory_variables=["Drink", "Inactivity"],
    out_features=r"Diabetes_SAR",
    model_type="LAG",
    neighborhood_type="CONTIGUITY_EDGES_CORNERS",
    distance_band=None,
    number_of_neighbors=None,
    weights_matrix_file=None,
    local_weighting_scheme="UNWEIGHTED",
    kernel_bandwidth=None
)

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