จากรูปหลายเหลี่ยมไปจนถึงการวัดความหลากหลายอย่างต่อเนื่อง?


11

ก่อนอื่น; ฉันพยายามค้นหาคำถามที่คล้ายกัน แต่ไม่ประสบความสำเร็จ อาจเป็นเพราะฉันค่อนข้างใหม่กับ GIS และฉันไม่รู้จริงๆว่าฉันต้องการอะไร หากมีคนชี้ให้ฉันเห็นปัญหาคล้ายกันฉันยินดีที่จะลบโพสต์นี้

ฉันต้องการสร้างตัวแปร 'ต่อเนื่อง' หรือแรสเตอร์ (ในเซลล์กริดเล็ก) ของความหลากหลายของประชากรสำหรับประเทศหนึ่ง ๆ ฉันมีไฟล์รูปร่างที่แสดงการแพร่กระจายของกลุ่มชาติพันธุ์ในรูปหลายเหลี่ยม (รูปที่ 1) และผลลัพธ์ที่ฉันมองหาคือ 'ตัวบ่งชี้ค่าเฉลี่ยของความหลากหลาย' ในแต่ละหน่วยการปกครอง (AU ในกรณีนี้คือ 360 เขตเลือกตั้งไนจีเรีย)

รูปที่ 1 - รูปหลายเหลี่ยมกลุ่มประชากร

รูปที่ 1 รูปประชากรกลุ่มโพลิกอนในไนจีเรีย

วิธีแก้ปัญหาที่ฉันคิดคือหาเปอร์เซ็นต์พื้นที่ของแต่ละรูปหลายเหลี่ยมในแต่ละ AU และคำนวณดัชนีความหลากหลายจากนั้น แต่ปัญหาคือฉันจะทิ้งข้อมูลไว้ค่อนข้างมากเนื่องจากการกระจายของหน่วยงานบริหาร ดังที่แสดงในรูปที่ 2, สี่เหลี่ยม 'a', 'b' และ 'c' จะมี 'ดัชนีการแยก' เหมือนกัน แต่เป็นที่ชัดเจนว่าพวกเขาไม่ได้อยู่ในตำแหน่งเดียวกันกับ 'ฮอตสปอต'

รูปที่ 2

รูปที่ 2

ดังนั้นฉันจึงคิดว่าวิธีแก้ปัญหาอื่นสามารถสร้างแผนที่กริดและคำนวณระยะทางไปยังชายแดนที่ใกล้ที่สุด แต่การแบ่งปันเพียงครั้งเดียวจะไม่เหมือนกับการอยู่ในใจกลางของแผนที่ซึ่งมีหลายกลุ่มอยู่ด้วยกัน

หลังจากค้นหาคำถามนี้ฉันเดาว่ารูปหลายเหลี่ยมสามารถเปลี่ยนเป็นจุดโดยใช้เซนทรอยด์ของพวกเขาแล้วใช้วิธีการเดียวกัน แต่ความจริงก็คือฉันยังใหม่กับสิ่งนี้และคำถามนั้นไม่ได้ตอบอย่างชัดเจน ฉันจะทำสิ่งนั้นได้อย่างไร

ใช้ตัวอย่างอื่นฉันต้องการสร้างสิ่งนี้ (ภาพจากเว็บไซต์นี้ ):

1 2

จากการแจกแจงบางจุดที่มีคุณสมบัติเชิงคุณภาพที่แตกต่างกันให้รับการวัดความหลากหลายจากที่ฉันสามารถประเมิน 'ความแตกต่างเฉลี่ย' ของแต่ละหน่วยการบริหาร

ฉันจะทำมันได้อย่างไร ฉันใช้ R และ QGIS ดังนั้นฉันไม่คิดว่าแพลตฟอร์มใดเป็นโซลูชันที่ใช้

คำตอบ:


5

ฉันจะให้ SpatiaLite ไปทำสิ่งนี้ให้สำเร็จ! สะดวกที่สุดคุณสามารถใช้ปลั๊กอิน QSpatiaLite ใน QGIS

เพียงตั้งค่าตารางรูปหลายเหลี่ยมที่มีขนาดที่เหมาะสมสำหรับกริดเซลล์ จากนั้นตัดตารางกับรูปหลายเหลี่ยมของกลุ่มชาติพันธุ์และคำนวณพื้นที่ของสี่แยกแต่ละแห่ง ด้วยตารางผลลัพธ์คุณสามารถคำนวณดัชนีของคุณโดยใช้พื้นที่สี่แยกซึ่งเป็นพื้นที่ของกลุ่มชาติพันธุ์ในแต่ละตารางเซลล์ในรูปของ 'ความอุดมสมบูรณ์ของเมตริก' (นั่นคือวิธีที่นักนิเวศวิทยาจะตั้งชื่อ)!

สมมติว่าเลเยอร์กลุ่มชาติพันธุ์ของคุณเรียกว่า 'EthnicGroups' โดยมีฟิลด์ 'กลุ่ม' และรูปหลายเหลี่ยมแบบตารางชื่อ 'กริด' ที่มีฟิลด์ 'ID' จะใช้คิวรี SQL นี้:

SELECT 
  g.ID AS gID, 
  e.group AS egr,
  AREA(INTERSECTION(e.geometry, g.geometry)) AS egr_area
FROM Grid AS g JOIN EthnicGroups AS e 
ON INTERSECTS(g.Geometry, e.Geometry)
ORDER BY gID, egr_area ASC

สำหรับการคำนวณความหลากหลาย - ตัวชี้วัดด้วยสูตรพิเศษฉันจะใช้ R, การยุบ 'ความอุดมสมบูรณ์' เหล่านี้โดยยอมให้มีค่าหนึ่งค่าสำหรับเซลล์กริดแต่ละเซลล์

เพื่อให้ได้ค่าเฉลี่ยความหลากหลายของคุณสำหรับแต่ละ AU คุณสามารถใช้ดัชนีความหลากหลายที่คุณเข้าร่วมกับกริดได้ อีกครั้งโดยใช้ SpatialLite จัดกลุ่มค่าภายใน AU-polygons ด้วยการใช้ค่าเฉลี่ยของฟังก์ชัน

ตลกที่ฉันเพิ่งเขียนบล็อกโพสต์ที่ครอบคลุมปัญหานี้ซึ่งอาจทำให้คุณมีความคิด: http://thebiobucket.blogspot.co.at/2014/12/usecase-find-dominant-species-and.html

เท่าที่ฉันกังวลฉันขอแนะนำให้ข้ามความคิดของ 'ความต่อเนื่อง' ในเรื่องนี้เพราะความหลากหลายนั้นมีความหมายเฉพาะในความสัมพันธ์กับหน่วยอวกาศที่อยู่บนพื้นฐาน ดังนั้นฉันคิดว่าวิธีการและเทคนิคแฟนซีทั้งหมดที่ใช้ค่าเฉลี่ยหรือการประมาณค่าแบบอื่นที่ไม่ใช่หน่วยพื้นที่ที่ดัชนีของคุณไว้วางใจจะไม่เพิ่มสิ่งที่มีค่า แต่จะบดบังผลลัพธ์!

นี่คือแผนที่แสดงสัตว์ครึ่งบกครึ่งน้ำ (แทนที่จะเป็นชาติพันธุ์;) ความหลากหลายที่ฉันใช้วิธีการแบบเดียวกัน: ป้อนคำอธิบายรูปภาพที่นี่

ps: ลิงค์ นี้อาจเป็นที่สนใจถ้าคุณต้องการได้รับความหลากหลายภายในรัศมีการค้นหาที่กำหนด!


4

ใน QGIS คุณสามารถสร้างกริดจุดที่ด้านบนของรูปหลายเหลี่ยมของคุณ คุณจะพบฟังก์ชันนี้ภายใต้ Vector -> เครื่องมือวิจัย (ฉันคิดว่ามันเรียกว่าเป็นภาษาอังกฤษรุ่น QGIS ของฉันเป็นภาษาอื่น) คุณจะต้องค้นหาความละเอียดที่เหมาะสมเมื่อมันมาถึงระยะห่างระหว่างจุดกริด

จากนั้นภายใต้เมนู Vector คุณจะเข้าร่วมแอตทริบิวต์ตามตำแหน่งที่ตั้ง (อยู่ภายใต้การจัดการข้อมูล) โดยใช้คะแนนเป็นเป้าหมายและรูปหลายเหลี่ยมชาติพันธุ์เป็นแหล่งที่มา

ตอนนี้คุณมีกริดพอยต์ที่มีแอตทริบิวต์ของเชื้อชาติสำหรับแต่ละจุด

ที่นี่เป็นที่ที่ค่อนข้างยุ่งยาก คุณสามารถสร้างแรสเตอร์โดยใช้คะแนนเหล่านี้หากคุณ recode แอ็ตทริบิวต์ของคุณเป็นค่าตัวเลข (ตัวอย่างเช่นการใช้เครื่องมือสร้างตัวเลขเทียบเท่าในกล่องเครื่องมือประมวลผล QGIS) จากนั้นคุณสามารถใช้สร้างกริดภายใต้ Raster -> Analysis ที่นี่คุณสามารถทดสอบกับการเลื่อนค่าเฉลี่ยหรือการวิเคราะห์เพื่อนบ้านที่ใกล้ที่สุดจากนั้นคุณสามารถใช้สถิติแบบ Zonal (มีตัวเลือกจำนวนมากในกล่องเครื่องมือการประมวลผลเช่นเดียวกับในเมนูแรสเตอร์)

เคล็ดลับคือวิธีรับดัชนี heterogenity โดยไม่สนใจค่าที่สร้างขึ้นโดยการคำนวณคุณลักษณะลงในดัชนีตัวเลข แต่คุณอาจมีความคิดของคุณเองที่นี่ ไม่แน่ใจว่าจะทำอย่างไรโดยไม่ต้องใช้เวลามากเกินไปจากสิ่งที่ฉันได้รับมอบหมายให้ทำตอนนี้ :)

อีกแนวคิดหนึ่งคือการโหลดกริดพอยต์ของคุณไปยังฐานข้อมูล Spatialite (หรือ PostGIS แต่เป็นการดำเนินการที่ใหญ่กว่าสำหรับการทำงาน) จากนั้นคุณสามารถใช้ฟังก์ชัน SQL และปริภูมิในฐานข้อมูลเพื่อทดสอบว่าทุกจุดภายในรัศมีที่กำหนดจากแต่ละจุด ให้ดัชนีความแปรปรวนท้องถิ่นแล้วสร้างแรสเตอร์จากค่านั้น ฉันทำงานเล็กน้อยเมื่อเร็ว ๆ นี้

หวังว่านี่จะช่วยให้คุณมีความคิด! รู้สึกอิสระที่จะใช้ความคิดเห็นหากคุณต้องการหารือเพิ่มเติม


ขอบคุณมาก!! ฉันจะพยายามแก้ไขและจะกลับมาหาคุณหากฉันมีปัญหาเพิ่มเติม (แน่นอนว่าฉันจะทำ)
Fran Villamil

2

มีข้อสมมติฐานจำนวนหนึ่งในคำถามของคุณซึ่งต้องแก้ไขก่อนที่คุณจะได้รับคำถามเกี่ยวกับการปรับใช้ ตัวอย่างที่คุณให้คือการวิเคราะห์ความหลากหลายทางชีวภาพที่อยู่บนพื้นฐานของตัวอย่างของพันธุ์พืชที่กำหนด ฉันดูคู่มือสำหรับซอฟต์แวร์ที่ใช้ในการสร้างแรสเตอร์นี้และไม่มีข้อบ่งชี้ว่าสิ่งนี้เหมาะสำหรับหรือนำไปใช้กับประชากรมนุษย์ เซนทรอยด์ของพื้นที่วัฒนธรรมมนุษย์ (ซึ่งคุณเสนอให้ใช้สำหรับการวิเคราะห์ของคุณ) ไม่ได้มีความคล้ายคลึงกับตัวอย่าง (เช่นการสังเกตจริง) ของการรวบรวมพืช

ความใกล้ชิดของกลุ่มย่อยของมนุษย์ (แบ่งตามมิติใด ๆ นี่คือมิติคือเชื้อชาติ) อาจแสดงเป็นมาตรการความหลากหลายหรือมาตรการแยก หนึ่งในการวัดความหลากหลายที่ใช้กันอย่างแพร่หลายคือดัชนี Herfindahlซึ่งแตกต่างจาก 0 ถึง 1 และมีขนาดเล็กเมื่อพื้นที่มีกลุ่มเล็ก ๆ จำนวนมากและใหญ่เมื่อพื้นที่มีกลุ่มใหญ่มากมาย มันถูกคำนวณภายในประชากรหรือพื้นที่โดยไม่มีการอ้างอิงถึงสิ่งใดนอกประชากรหรือพื้นที่ นี่เป็นปัญหาเนื่องจากคุณสนใจที่จะมีปฏิสัมพันธ์เชิงพื้นที่ข้ามขอบเขตการจัดการ

หนึ่งในการวัดที่ใช้กันอย่างแพร่หลายคือดัชนีของความแตกต่างซึ่งแตกต่างจาก 0 ถึง 1 และมีขนาดเล็กเมื่อ subareas มีการกระจายตัวของประชากรเช่นเดียวกับภูมิภาคมากขึ้นและมีขนาดใหญ่เมื่อ subareas เป็นเพียงกลุ่มเดียวหรืออื่น โดยปกติจะมีการคำนวณภายในภูมิภาคที่มีข้อมูลประชากรสำหรับ subareas จำนวนมาก (เช่นคุณสามารถคำนวณดัชนี Black-White ของความแตกต่างสำหรับพื้นที่เมืองใหญ่ตามข้อมูลประชากรสำหรับพื้นที่สำรวจสำมะโนประชากรทั้งหมดในเขตปริมณฑล) หว่อง (2002)ได้จำลองท้องถิ่นการแยกโดยการคำนวณดัชนีของความแตกต่างสำหรับแต่ละพื้นที่ย่อยตามประชากรในพื้นที่ใกล้เคียง (กล่าวคือต่อเนื่องกัน) subareas มากกว่าภูมิภาคโดยรวม ข้อ จำกัด ของมาตรการนี้คือสามารถทำงานได้ครั้งละสองกลุ่มเท่านั้น อย่างไรก็ตามฉันได้ใช้มันในการวิจัยของตัวเองโดยใช้สองกลุ่มที่มีประชากรมากที่สุดในแต่ละเขตของเพื่อนบ้าน

คุณระบุว่าคุณต้องการคำนวณความหลากหลายสำหรับแต่ละหน่วยการบริหาร (AU) แต่คุณก็ต้องบอกว่าคุณต้องสร้างความหลากหลายอย่างต่อเนื่อง ไม่ชัดเจนสำหรับฉันถ้าคุณต้องการแรสเตอร์ที่มีความหลากหลายอย่างต่อเนื่องหรือถ้าคุณคิดว่าคุณต้องการสิ่งนั้นเพื่อคำนวณความหลากหลายของ AU หากคุณต้องการความหลากหลายอย่างต่อเนื่องฉันขอแนะนำให้ดูที่O'Sullivan & Wong (2007)ซึ่งแสดงภาพความหลากหลายอย่างต่อเนื่องโดยใช้ตัวประมาณความหนาแน่นเคอร์เนล นี่เป็นผลของการบัญชีสำหรับการโต้ตอบกับประชากรข้ามขอบเขตการจัดการซึ่งคุณระบุว่าคุณต้องการ

OTOH ถ้าคุณต้องการความหลากหลายตามหน่วยการบริหารคุณสามารถทำได้โดยใช้ดัชนี Herfindahl หรือดัชนีท้องถิ่นที่แตกต่างกัน แต่นั่นต้องใช้ข้อมูลเกี่ยวกับลักษณะทางประชากรภายในแต่ละ AU ฉันคิดว่าเหตุผลที่คุณใช้แผนที่พื้นที่ชาติพันธุ์เป็นเพราะคุณไม่มีข้อมูลประชากรชาติพันธุ์สำหรับ AUs แต่ถ้าคุณรู้ว่าประชากรของแต่ละ AU และคุณตัดกับตารางชาติพันธุ์พื้นที่คุณสามารถปันส่วนประชากรของ AUs ไปยังพื้นที่ชาติพันธุ์ ข้อสันนิษฐานที่สำคัญกับคำตอบนี้และคำตอบอื่น ๆ ที่เสนอมาคือพวกเขาคิดว่าความหนาแน่นของประชากรนั้นคงที่ตลอดทั้ง AU หรือพื้นที่ชาติพันธุ์ สมมติฐานนี้ดูเหมือนว่าเป็นเรื่องง่าย ไม่น่าเชื่อ แต่คุณรู้ข้อมูลที่ดีกว่าฉันและอาจพอใจกับสมมติฐานนี้

จากความเข้าใจในเป้าหมายของฉันฉันคิดว่าแนวทางของฉันจะเป็นดังนี้:

  1. แบบจำลองประชากรภายในหน่วยย่อยที่หน่วยย่อยอาจเป็นจุดตัดของ AU และพื้นที่ชาติพันธุ์หรือเวกเตอร์หรือตารางแรสเตอร์ ให้เวลาพอฉันอยากลองทั้งสองวิธี
  2. คำนวณดัชนี Herfindahl สำหรับแต่ละ AU แต่ตาม Wong (2002) ฉันจะคำนวณดัชนี Herfindahl ตามพื้นที่ใกล้เคียงของ AU แต่ละแห่งแทนที่จะเป็นเพียงประชากรใน AU ให้เวลามากพอที่ฉันจะทดลองกับย่านที่อยู่อาศัยแบบต่อเนื่องและระยะทาง

แน่นอนว่าไม่มีสิ่งใดที่จะนำไปใช้ในทางเทคนิค แต่ถ้าคุณให้ข้อเสนอแนะกับฉันเราสามารถดำเนินการต่อได้

ป.ล. : เอกสารทางวิชาการที่ฉันเชื่อมโยงเข้าด้วยกันนั้นมีความน่าสนใจ หาก OP ไม่สามารถเข้าถึงห้องสมุดวิชาการได้โปรดติดต่อฉันทางอีเมลและฉันจะให้บริการแก่คุณ


+1 อาจไม่มีรายละเอียดทางเทคนิค แต่ก็มีประโยชน์และให้ข้อมูลมาก!
โจเซฟ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.