ArcGIS स्थानिक विश्लेषक में NoData के साथ काम?


10

स्थानिक विश्लेषक का उपयोग करते समय मैं नियमित रूप से NoData मान के साथ मुद्दों को डेटा में क्रॉप करता हूं।

विभिन्न उपकरण नियमित रूप से NoData मूल्यों को पेश करते हैं।

ये मान तब अन्य उपकरणों के साथ समस्या पैदा करते हैं और पुनर्वर्गीकरण के साथ समाप्त हो जाते हैं, आमतौर पर अन्य समस्याओं के परिणामस्वरूप।

NoData मानों से कैसे निपटा जाना चाहिए? क्या NoData मान को शून्य के साथ बदलने का एक सरल तरीका है? क्या NoData को पूरी तरह से टाला जा सकता है?


3
आमतौर पर - लेकिन हमेशा नहीं - NoData मान होना चाहिए। यह पूरे ऑपरेशन को विफल होने से रोकता है जब यह केवल कुछ कोशिकाओं पर अलग से विफल हो सकता है। अच्छे उदाहरण शून्य से विभाजित होते हैं, गैर-सकारात्मक संख्याओं के लॉग, और ग्रिड की सीमाओं के साथ किए गए विभिन्न स्थानीय संचालन। कुछ अच्छे उदाहरणों में से एक मुझे पता है कि जहां NoData मूल्यों को पेश नहीं किया जाना चाहिए , वे फोकल बहुमत / अल्पसंख्यक हैं, जो उन्हें NoData पर सेट करके संबंधों को हल करते हैं!
whuber

1
इसके अलावा, परिमित NoData (जैसे, -9999), और 1.#QNANNoData के बीच अंतर है । ArcGIS में पूर्व पारदर्शी है, जबकि 1.#QNANNoData अपारदर्शी काला है।
माइक टी।

जवाबों:


6

मैंने निम्नलिखित अभिव्यक्ति के साथ रेखापुंज कैलकुलेटर का उपयोग किया होगा:

Con(IsNull([raster]), 0, [raster])

यह मानता है कि आपके रेखापुंज को 'रेखापुंज' कहा जाता है।


10.x रैस्टर कैलकुलेटर टूल सिंटैक्स थोड़ा अलग है। इस उदाहरण में, "रेखापुंज" मानचित्र में एक परत है:

Con(IsNull("raster"), 0, "raster")

4

आप सशर्त ऑपरेटर सेट नल ( ArcGIS 9.3 , ArcGIS 10 ) का उपयोग करके किसी भी मान के लिए NoData मान सेट कर सकते हैं । मैं NoData को पहली जगह में प्रदर्शित होने से रोकने के तरीके से अवगत नहीं हूँ, हालाँकि।


मुझे एहसास हुआ कि मुझे @AndOne के रूप में कॉन ऑपरेटर से लिखित / जुड़ा होना चाहिए ।

प्रलेखन से, यदि आप अजगर का उपयोग करते हैं:

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outCon = Con("elevation", "elevation", "", "VALUE > 2000")
outCon.save("C:/sapyexamples/output/outcon.img")

1
+1। कई कार्यों में तर्क होते हैं जो NoData परिणामों को सीमित करते हैं। उदाहरण के लिए , जब कंप्यूटिंग पड़ोस ("फोकल") आँकड़े आप निर्दिष्ट कर सकते हैं कि इनपुट में NoData (जो किनारों के आसपास होना चाहिए ) को आउटपुट के लिए प्रचारित करने के बजाय केवल अनदेखा किया जाए। ध्यान दें कि प्रत्येक प्लानर ग्रिड के आगे एक सीमा होती है जो NoData होती है।
whuber

क्या यह वास्तव में NoData को शून्य में बदलने के लिए उपयोग किया जा सकता है?
मैथ्यू स्नेप

हाँ, आप किस संस्करण का उपयोग कर रहे हैं?
djq

मैं जो प्रयोग कर रहा हूं, वह है आर्किस 10.0
मैथ्यू स्नेप
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.