יותר

מציאת ספירת נקודות במספר מאגרי טבעות עבור מזהי נקודה מרובים באמצעות פייתון


יש לי תבנית A שיש לה 13 נקודות. כל אחת מנקודות אלה מקודדת עם מזהה ייחודי מ- A ל- M.

יצרתי 10 מאגרים שונים (המייצגים מרחקים שונים) סביב כל נקודה באמצעות מאגר הטבעת המרובה (ניתוח). כעת יש לי קובץ shapB שמציג את כל המאגרים סביב כל אחת מ -13 הנקודות.

יש לי עוד shapefileC שמכיל אלפי נקודות, כאשר כל נקודה משויכת לקוד ייחודי (A-M) המתאים לנקודה אחת ב- shapefileA. לדוגמא, שאילתה של "ID = A" עבור הטפסים תציג את הנקודה האחת ב- shapefileA, את קבוצת המאגרים המסוימת ב- shapefileB ואת הנקודות המרובות המשויכות (שנמצאות בתוך המאגרים) אליה ב- shapefileC.

כאן אני צריך עזרה. מהי הדרך היעילה ביותר באמצעות פיתון, למצוא כמה נקודות בתוך כל רצועת חיץ עבור כל מזהה ייחודי, ואז לעדכן שדה חדש (ב- shapefileB) במספר? אני יודע שאני צריך סמן שיעבור בכל שורה, ואז בחר לפי מיקום, ואז ספירת נקודות, ולבסוף חישוב שדה חדש כדי להציג את סכום הנקודות בתוך חיץ המרחק הספציפי עבור המזהה הספציפי.

לא טוב לי בקינון סמנים, ונראה שזה מה שאצטרך.


אני לַחשׁוֹב הצטרפות מרחבית תעשה זאת ...

הגדר יעד כ- shapefile B, הצטרף כ- shapefile C.

הוסף שדה מספרי והגדר את כלל המיזוג לספירה.

אפשרות התאמה כ- INTERSECT.

האם ברצונך לספור את כל הנקודות שנוחתות בכל מעגל חיץ (האמור לעיל עושה זאת) או רק את טבעת השטח בין הקודם לזרם? אם האחרון, יהיה עליכם למזער את הספירה מהמאגרים הקודמים.


צפו בסרטון: קורס פייתון - 06 - טיפוסי משתנים type (אוֹקְטוֹבֶּר 2021).