Menghitung korelasi spasial antara fitur dari dua lapisan terpisah di QGIS


10

Saya mencoba untuk menentukan apakah kehadiran sejumlah besar pasukan militer yang bertugas aktif di suatu daerah secara spasial berkorelasi dengan tingkat kejahatan kekerasan yang lebih tinggi / lebih rendah. Yaitu, apakah rata-rata daerah di sekitar pangkalan militer besar lebih keras daripada daerah yang tidak dekat pangkalan militer?

Saya bekerja dengan dua set data berikut:

(1) satu set data titik pangkalan militer di benua AS & tingkat pasukannya yang sesuai:

Lokasi instalasi militer AS di bawah 48

(2) satu set data nasional tentang tingkat kejahatan dengan kota / kota:

Tingkat kejahatan kekerasan di AS menurut kota

Saya merasa seperti mencari model berbasis gravitasi di mana fungsi "massa" memberikan level pasukan di setiap pangkalan. Jadi kehadiran pasukan besar akan memberikan pengaruh pada area yang lebih besar, dan akan memiliki efek yang lebih kuat di dekat pusat massa (yaitu lokasi titik di lapisan GIS).

Saya berpikir bahwa, secara konseptual, akan terlihat seperti ini: model gravitasi - diagram peluruhan jarak

Dalam diagram ini X, Y, Z mewakili pangkalan militer. a, b, c, d masing-masing mewakili kota (masing-masing memiliki bidang tingkat kekerasan dalam tabel atributnya).

Gradien di sekitar pangkalan mewakili bidang pengaruh, yang menurun secara eksponensial dengan jarak yang jauh dari pusat massa dasar. Kehadiran pasukan yang lebih besar sama dengan radius pengaruh yang lebih besar (dengan beberapa jarak ambang maksimum), dan juga pengaruh yang lebih kuat di dekat pusat relatif terhadap daerah di dekat pangkalan yang lebih kecil.

Setiap kota akan diberi skor berdasarkan penjumlahan besarnya semua vektor "gaya" dari semua pangkalan di sekitarnya yang radius pengaruhnya terletak. Jadi misalnya, dalam diagram saya, Kota a akan memiliki skor 0 karena terletak di luar radius basis apa pun. Kota b hanya akan dipengaruhi oleh basis X . Kota c hanya akan dipengaruhi oleh Basis Z , dan skor akan lebih rendah daripada b , karena X adalah basis jauh lebih besar daripada Z . Akhirnya, Kota d terletak dalam radius kedua basis X dan Y, itu akan menerima skor berdasarkan penjumlahan besarnya pengaruh dari kedua pangkalan. Saya kemudian akan melihat apakah ada korelasi antara skor yang lebih tinggi untuk kota dan tingkat kekerasan yang lebih tinggi.

Saya telah melihat ke berbagai model berbasis gravitasi ( Huff Models , dll) tetapi belum dapat menemukan sejauh QGIS / Python, dan saya tidak yakin bagaimana menerapkan apa yang saya jelaskan di atas ... Adakah yang punya saran untuk ini? Pernahkah Anda melakukan analisis jenis ini di bidang lain sebelumnya?

Jadi TLDR adalah:

  • Teknik statistik apa yang bisa saya gunakan untuk pertanyaan semacam ini?
  • Apakah ada alat bawaan untuk QGIS (atau tersedia sebagai plugin) yang dapat melakukan ini?
  • Jika tidak ada yang seperti ini di QGIS, apakah ada pustaka Python yang dapat melakukan analisis semacam ini?

Untuk memperjelas, saya sadar bahwa ada banyak faktor lain yang berperan dalam tingkat kekerasan (kemiskinan, kepadatan kota, dll) tetapi tolong asumsikan demi kesederhanaan bahwa tidak ada variabel pengganggu yang signifikan dan bahwa saya hanya melihat korelasi antara kedua variabel ini (tingkat pasukan dan tingkat kekerasan). Pada titik ini, ini hanya latihan pembelajaran, dan saya mencoba mencari tahu alat apa yang tersedia untuk saya. Terima kasih!
J. Taylor

1
Untuk menjawab pertanyaan ketiga Anda, saya menemukan PySAl, yang dikembangkan oleh Prof Luc Anselin yang pantas diperhatikan karena minat Anda. Dia juga bekerja pada GeoDa, yang merupakan solusi luar biasa untuk apa yang Anda lihat. Mungkin ada plugin PySAl untuk QGIS? pysal.readthedocs.org/en/latest
raphael

Jawaban:


2

Memperluas komentar saya di atas

Apa yang Anda mungkin ingin lakukan adalah menjalankan regresi linier dengan spasi spasial, yang menyumbang korelasi spasial dari beberapa variabel Anda (saya harus melihat catatan saya tentang ini).

Luc Anselin telah menjadi pelopor dalam bidang ini, dan Anda harus melihat karyanya, terutama alat (gratis) dan dokumentasi di GeoDa Center . Kedua alat ini dapat menarik bagi Anda:

  1. GeoDa, perangkat lunak mandiri untuk mengeksplorasi korelasi spasial (otomatis).
  2. PySAL , perpustakaan analitik spasial Python.

Pencarian saya untuk plugin PySAL untuk QGIS menemukan sesuatu yang belum diperbarui selama bertahun-tahun, tetapi Anda mungkin lebih beruntung.


Raphael terima kasih. Saya akan melihat lebih dalam konsep "regresi linier dengan spasi spasial". Saya sudah menemukan PySAL / GeoDa berkat rekomendasi pada saluran IRC #qgis. Anda benar bahwa banyak dokumentasi di halaman GeoDa telah membantu. Saya masih belum menemukan sesuatu yang melakukan persis apa yang saya inginkan, tetapi jika akhirnya saya harus kode sendiri, ada banyak alat di sana yang terlihat seperti mereka akan berguna "blok bangunan".
J. Taylor
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.