Реализация пространственной автокорреляции с использованием QGIS или PostgreSQL или любого другого бесплатного приложения? [закрыто]


13

Я новичок в ГИС.

У меня есть два слоя в базе данных PostgreSQL.
Первый слой содержит точки, где происходили события в Европе. Второй содержит шейп-файл Европы.

Мне удалось отобразить точки на карте Европы с помощью QGIS. Теперь я хотел бы реализовать пространственную автокоррекцию (Moran i).

Я видел несколько демонстраций того, как это делается с использованием GeoDA, но похоже, что он обрабатывает только один шейп-файл.

Может кто-нибудь указать мне правильное направление о том, как реализовать это с помощью QGIS или PostgreSQL или любого другого бесплатного приложения?

Ответы:


15

Учиться на практике - мой любимый способ. И когда дело доходит до пространственной статистики, R становится действительно мощным инструментом. Так что, если это вариант, просмотрите некоторые материалы курса, загрузите данные и попробуйте сами.

Несколько начальных точек, охватывающих пространственную автокорреляцию (SA) (и вообще говоря, обработку пространственных вещей в R):

  1. Центр исследований в области демографии и экологии (CSDE) при Вашингтонском университете предоставляет материалы с семинара Spatial R.

  2. Институт количественных социальных наук при Гарвардском университете имеет материалы из семинара « Прикладная пространственная статистика в R», посвященного SA.

  3. Географический факультет Университета Колорадо предлагает материалы по SA в рамках курса « Введение в количественные методы» .

Когда вы немного познакомитесь с R, вы можете связать его с PostgreSQL, используя процедурный язык PL / R - R для PostgreSQL , но я не могу комментировать его, так как не разбираюсь в этой теме.

Python может быть другой альтернативой. PySAL - это активно разработанная и хорошо документированная библиотека, которая позволит вам реализовать все функциональные возможности GeoDa, включая SA (и, скорее всего, даже больше). Python и Postgres, как правило, хорошие друзья, поэтому потратив некоторое время, вы, скорее всего, тоже поженитесь на этих двоих.


2

Я понятия не имею, как реализовать вашу идею QGIS / PostgreSQL, но следующее программное обеспечение может рассчитать меры для автокорреляции

GeoDa может обрабатывать только вектор, Passage2 и SAGA только растр, PAST only XYZ.txt и SAM (я думаю) оба.


2

У Арт Лембо есть простой пример псевдоморана I для PostGIS :

SELECT corr(a.pctwhite, b.pctwhite)
FROM cleveland AS a, cleveland AS b
WHERE st_touches(a.geometry, b.geometry)
AND a."OID" <> b."OID"

Ключ здесь в том, что - как он выразился. , ,

[Моран I] на самом деле не более, чем коэффициент корреляции Пирсона, обманутый пространственным контекстом

, , , Это означает, что базовый тест на смежность может дать достоверную матрицу и оценку. Я проверил это на своих собственных данных и обнаружил, что он дает результаты, очень похожие на другие реализации Морана I.


1

Прошу прощения за двойной ответ, но после публикации моего первого предложения я наткнулся на более всеобъемлющий инструментарий для проведения всех видов анализа, подобных этому (включая как глобальный, так и локальный Моран I):

Коленчатый вал , модуль Python / PostGIS от Carto.

Я уже несколько месяцев использую его для анализа производства, аналогичного вашему варианту использования, и он работает безупречно. Похоже, CDB_AreasOfInterestGlobal()это функция, которую вы хотели бы использовать.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.