มีหลายวิธีที่จะไปเกี่ยวกับเรื่องนี้ หนึ่งที่มีประสิทธิภาพตรงไปตรงมาหนึ่งประกอบด้วย:
คำนวณพิกัด x และ y เป็นเขตข้อมูลในตารางแอตทริบิวต์
เชื่อมต่อพิกัดเหล่านี้เข้ากับตัวระบุ
สรุปตารางบนตัวระบุนี้เพื่อขอผลรวมของเขตข้อมูลตัวเลขรวมทั้งอินสแตนซ์แรกของทั้ง x และ y
สร้างชุดรูปแบบเหตุการณ์จุดของตารางสรุปโดยใช้ (x, y) สำหรับพิกัด
แก้ไข
ในความคิดเห็น @myClone เขียน
จุดไม่ได้ทับซ้อนกันอย่างแน่นอน (หมายถึงพิกัด xy ใกล้เคียงกัน แต่ไม่เท่ากับกันและกัน) แต่ฉันแค่ต้องการรวมคะแนนที่อยู่ในระยะ 100 ฟุตซึ่งกันและกัน
โดยทั่วไปไม่มีวิธีแก้ปัญหาเฉพาะ ลองพิจารณาตัวอย่างเช่นสามจุดในบรรทัดที่แต่ละจุดแยกห่างจากเพื่อนบ้าน 75 ฟุต:
* * *
a b c
คุณจัดกลุ่มทั้งสามโดยไม่คำนึงถึงระยะทาง (a, c)> 100 หรือไม่ ถ้าไม่คุณเลือกวิธีแก้ปัญหาใด: (a, b), (c) หรือ (a), (b, c)?
สองแนวทางที่ให้คำตอบต่างกันในกรณีเช่นนี้คือ:
(i) บัฟเฟอร์ทุกจุดโดย 50 = 100/2 ฟุตเพื่อร้องขอให้รวมบัฟเฟอร์ เข้าร่วมบัฟเฟอร์กลับไปที่จุด: นี่ endows แต่ละจุดด้วยแอตทริบิวต์ของบัฟเฟอร์ที่ผสานที่ประกอบด้วย สิ่งนี้บรรลุเป้าหมายของขั้นตอน (2) ในโซลูชันดั้งเดิมของฉัน ดำเนินการจากตรงตามที่เคยเป็นมา ในตัวอย่างนี้จะรวมกลุ่ม a, b และ c เข้าด้วยกัน
(ii) สร้างกริด 100 x 100 ฟุตและระบุจุดโดยเซลล์กริดของพวกเขา สิ่งนี้ไม่จำเป็นต้องวาดเส้นกริดหรือแม้กระทั่งการจัดเก็บคุณลักษณะของมันเนื่องจากเซลล์ที่ (x, y) ตั้งอยู่จะถูกกำหนดโดยคู่ที่สั่งซื้อ (ชั้น ((x-x0) / 100), ชั้น ((y-y0) ) / 100)) โดยที่ (x0, y0) เป็นจุดกำเนิดตารางใด ๆ ที่คุณต้องการ รวมพิกัดเหล่านี้เพื่อระบุเซลล์อีกครั้งถึงขั้นตอน (2) ในโซลูชันดั้งเดิมของฉัน ดำเนินการต่อเหมือนก่อน
วิธีการที่ชัดเจน (ii) ไม่ได้รวบรวมจุดคู่ทั้งหมดภายใน 100 ฟุตเพราะสามารถรวบรวมคู่ได้มากถึง 100 * Sqrt (2) = 141 ฟุตของกันและกัน คุณสามารถชดเชยโดยการลดขนาดกริดให้เป็น 100 / Sqrt (2) = 71 ฟุต แต่จากนั้นบางคู่ภายในระยะ 100 ฟุตจะไม่ถูกรวมเข้าด้วยกัน เลือกพิษของคุณ
โปรดทราบว่าการแก้ปัญหาในวิธีการ (ii) ขึ้นอยู่กับกำเนิดกริดและระยะห่าง การใช้กริด 100 ฟุตก็จะให้ผล {(a, b), (c)} หรือ {(a), (b, c)} ขึ้นอยู่กับจุดกำเนิด ใช้กริด 71 ฟุตมันจะแยกทั้งสามจุดโดยไม่คำนึงถึงจุดกำเนิด
มีวิธีอื่น ๆซึ่งฉันจะรวบรวมเข้าด้วยกันเป็นกลุ่ม:
(iii) ใช้ขั้นตอนการจัดกลุ่มเชิงสถิติเช่น k-mean หรือการจัดกลุ่มแบบลำดับชั้นเพื่อทำงาน มีโหลดของข้อมูลที่เป็นประโยชน์เกี่ยวกับเรื่องนี้ในเว็บไซต์น้องสาวของเราเป็นสถิติ @ SE โดยทั่วไปซอฟต์แวร์สถิติจะยอมรับ (id, x, y) อเนกประสงค์เป็นอินพุตและเอาต์พุต (หรือสามารถชักชวนให้ส่งออก) ตารางของอเนกประสงค์ (id, คลัสเตอร์) เข้าร่วมตารางผลลัพธ์นี้กลับไปที่ตารางแอตทริบิวต์จุดอีกครั้งนำเรากลับไปที่ขั้นตอนที่ (2) ในโซลูชันดั้งเดิม ฯลฯ
(iv) ซอฟแวร์ทางภูมิศาสตร์บางอย่าง เช่นGSLibรวมถึงรูทีน "declustering" ต่างๆที่มีวัตถุประสงค์เพื่อเตรียมข้อมูลสำหรับการผันแปรและการทำนาย เอาต์พุตของพวกเขาสามารถนำเข้ากลับเข้าสู่ซอฟต์แวร์ GIS และสร้างเป็นเลเยอร์จุดได้
วิธีการที่อธิบายให้คุณสามารถควบคุมสิ่งที่เกิดขึ้นได้อย่างเต็มที่ช่วยให้คุณสามารถทำงานของคุณได้อย่างมีความรู้และเป็นมืออาชีพ
ในที่สุดมันก็คุ้มค่าที่จะกล่าวถึง
(v) สำเนาล่าสุดของ ArcGIS มีเครื่องมือสำหรับการกำหนดความคมชัด ในขณะที่ฉันจำได้มันก็ไม่มีความชัดเจนว่ามันทำงานอย่างไร คุณต้องอ่านโค้ดอ้างอิงเพื่อหาว่าเกิดอะไรขึ้น