4
มีประสิทธิภาพมากขึ้น Spatial อวกาศเข้าร่วมใน Python โดยไม่ต้องมี QGIS, ArcGIS, PostGIS, ฯลฯ
ฉันกำลังพยายามทำการรวมเชิงพื้นที่เหมือนตัวอย่างที่นี่: มีตัวเลือกหลามเพื่อ "เข้าร่วมแอตทริบิวต์ตามตำแหน่งที่ตั้ง" หรือไม่ . อย่างไรก็ตามวิธีการนั้นดูเหมือนไม่มีประสิทธิภาพ / ช้าจริงๆ แม้แต่การวิ่งด้วยความสุภาพ 250 คะแนนใช้เวลาเกือบ 2 นาทีและมันล้มเหลวอย่างสิ้นเชิงกับรูปร่างที่มี> 1,000 คะแนน มีแนวทางที่ดีกว่านี้ไหม? ฉันต้องการทำสิ่งนี้ทั้งหมดใน Python โดยไม่ต้องใช้ ArcGIS, QGIS, ฯลฯ ฉันยังสนใจที่จะทราบว่าเป็นไปได้ที่จะใช้แอตทริบิวต์ SUM (เช่นจำนวนประชากร) ของทุกจุดที่อยู่ในรูปหลายเหลี่ยมและเข้าร่วมปริมาณนั้นกับรูปหลายเหลี่ยมรูปร่างหรือไม่ นี่คือรหัสที่ฉันพยายามแปลง ฉันได้รับข้อผิดพลาดในบรรทัดที่ 9: poly['properties']['score'] += point['properties']['score'] ซึ่งพูดว่า: TypeError: ประเภทของตัวถูกดำเนินการที่ไม่รองรับสำหรับ + =: 'NoneType' และ 'float' ถ้าฉันแทนที่ "+ =" ด้วย "=" มันจะทำงานได้ดี แต่นั่นไม่ได้ผลรวมฟิลด์ ฉันได้ลองทำสิ่งเหล่านี้ด้วยจำนวนเต็ม แต่ก็ล้มเหลวเช่นกัน with …