आर्कगिस जोनल आँकड़ों में प्रमुख बग?


25

अद्यतन: बग को आरकेजीआईएस 10.4 रिलीज में तय किया गया है

मैं कई क्षेत्रों के लिए आंचलिक आँकड़ों को निर्धारित करने के लिए ArcGIS 10.2.2 का उपयोग कर रहा हूँ। यदि मूल्य रेखापुंज में कोई NoData है, तो मैं चाहता हूं कि ज़ोन परिणाम "NoData" हो, ठीक उपकरण विवरण द्वारा विज्ञापित। यह उपकरण विवरण बताता है:

DATA - किसी विशेष क्षेत्र के भीतर, केवल उन कोशिकाओं के लिए जो इनपुट मान में एक मान है, उस क्षेत्र के लिए आउटपुट मान को निर्धारित करने में उपयोग किया जाएगा। मूल्य रेखापुंज में NoData कोशिकाओं को सांख्यिकीय गणना में अनदेखा किया जाएगा।

NODATA - किसी विशेष क्षेत्र के भीतर, यदि कोई NoData कोशिकाएं मूल्य रेखापुंज में मौजूद हैं, तो यह माना जाता है कि उस क्षेत्र की सभी कोशिकाओं के लिए सांख्यिकीय गणना करने के लिए अपर्याप्त जानकारी है; इसलिए, पूरे क्षेत्र को आउटपुट रैस्टर पर NoData मान प्राप्त होगा।

कृपया इस चित्र में मेरे सेटअप पर एक नज़र डालें: यहाँ छवि विवरण दर्ज करें

मैं NODATA विकल्प का उपयोग एक मूल्य रेखापुंज के साथ कर रहा हूं जिसमें एक NoData पिक्सेल है, और इसलिए परिणामी ज़ोन मान (ज़ोन 61154) 'NoData' होने की अपेक्षा करता है। इसके बजाय, मुझे 12.74 का मान मिलता है (छवि में 13 पर गोल), जो मुझे दो स्तरों पर भ्रमित करता है: पहला, मुझे 'NoData' की उम्मीद थी, और दूसरा, 12.74 का परिणामी मूल्य गणितीय रूप से असंभव है, क्योंकि इसका मतलब बड़ा नहीं हो सकता है मूल्य रेखापुंज में अधिकतम मूल्य से, जो इस मामले में 10 है।

यदि मैं डेटा विकल्प का उपयोग कर रहा हूं, तो मुझे लगभग 9.1 का मूल्य मिलता है, जो समझ में आता है। हमने विभिन्न डेटासेट, कंप्यूटर और आर्कगिस संस्करणों पर इसका परीक्षण किया।

मुझे यहां क्या समझ नहीं आ रहा है?

संपादित करें / अतिरिक्त टिप्पणी: मैंने अभी देखा कि उस विशेष क्षेत्र के लिए 'गणना' विशेषता भी गलत है। उस क्षेत्र में वास्तव में 421 कोशिकाएं हैं, लेकिन उपकरण केवल 297 गिना जाता है। 421 शून्य से 297 परिणामों की गणना 124 में - अजीब रूप से पर्याप्त है, यह "स्थिति" है जहां NoData पिक्सेल स्थित है, अगर कोई ऊपरी से निचले हिस्से में पिक्सेल को गिनता है जोन में सही है। उपकरण गलत (बहुत कम) सेल की गिनती प्राप्त कर सकता है, जो औसत की वृद्धि को समझा सकता है।

संपादित करें: यहां मेरे द्वारा उपयोग किए जा रहे डेटा की एक कड़ी है

संपादित करें: डैन पैटरसन और मैंने ईएसआरआई फोरम में यहां कुछ और डिबगिंग की ।


1
हाँ यह कुछ पागल पैदा करता है। मेरे मामले में रेंज (16,86) में रेखापुंज के लिए MEAN = 537। मजाकिया नहीं
FelixIP

इस रैस्टर में NoData का प्रतिनिधित्व करने के लिए किस मूल्य का उपयोग किया जाता है?
इजीबेल

@ जेजेबेल: अच्छा सवाल, मुझे एक विश्वसनीय उत्तर कहां मिलेगा? अगर मैं Ascii के रूप में निर्यात करता हूं, तो यह -9999 है। यदि मैं संदर्भ मेनू से निर्यात फ़ंक्शन का उपयोग करता हूं, तो "NoData as:" - निर्यात संवाद का क्षेत्र 2147483647 के साथ पूर्वनिर्मित हो जाता है। क्या यह झंडा उठाता है?
जी-जादूगर

यह विशेषता तालिका में एक पंक्ति के रूप में दिखाई देगा
Jezibelle

1
मैंने अपनी पोस्ट के अंत में एक और संपादन किया, जहां मैं ESRI फोरम में एक समान पोस्ट से लिंक करता हूं । त्रुटि की पुष्टि (एक मोड़ के साथ)। "MEAN" की गणना केवल "ALL" आँकड़ों की गणना करने से भिन्न / बदतर परिणाम उत्पन्न करती है।
जी-जादूगर

जवाबों:


9

एक बग है जो आपके अनुभव के अनुरूप होने के लिए लगता है - यह BUG-000084883 के रूप में पंजीकृत है - टेबल टूल {और जोनल स्टैटिस्टिक्स टूल} के रूप में जोनल स्टैटिस्टिक्स में 'गणना में इग्नोर न करें विकल्प' की जाँच की जाती है, जब उत्पादन की जाँच की जाती है गलत परिणाम।

यह 10.3 और 10.2.2 के साथ होता है लेकिन 10.1 नहीं। क्या आपने इस संस्करण के साथ टूल आज़माया है?


यह एक अच्छे दृष्टिकोण की तरह लगता है, हालांकि मैं व्यक्तिगत रूप से नहीं जानता कि उपकरण के पुराने संस्करणों को कैसे चलाया जाए। क्या किसी को पता है कि मुझे इस काम के लिए प्रयास करने के लिए कहाँ इंगित करना है?
उदेरलीस्ट्रेट

धन्यवाद @GISGe आपको यह कहां से मिला? क्या कोई लिंक है जहाँ इस बग को प्रलेखित किया गया है?
जी-जादूगर

1
@ जी-जादूगर - मैंने अपने उत्तर में लिंक जोड़ दिया है। Esri अंतरराष्ट्रीय कर्मचारियों के रूप में मेरे पास आपके द्वारा देखे जा सकने वाले विवरणों की तुलना में अधिक विस्तृत विवरण तक पहुंच है, कि कैसे मैं आपको बता सकता हूं कि बग जोनल स्टैटिस्टिक्स टूल पर भी लागू होता है और 10.1 में नहीं मिलता है।
GISGe

@UdderlyAstray - यदि आप टूल का पुराना संस्करण चलाना चाहते हैं, तो आपको ArcGIS के पुराने संस्करण को इंस्टॉल करना होगा।
GISGe

1
धन्यवाद फिर से, @GISGe, क्योंकि यह वही है जिसकी मैं तलाश कर रहा हूं (बग आधिकारिक रूप से पुष्टि की गई है), मैं इस उत्तर को सही के रूप में चिह्नित कर रहा हूं, हालांकि अन्य लोगों ने परीक्षण करके भी इसकी पुष्टि की है।
जी-जादूगर

9

यह एक बग है। सेल गिनती के साथ कुछ बहुत गलत है।

सही मतलब (9.0452380952381) बार - बार गैर-रिक्त कोशिकाओं (420) की सही संख्या 297 (जो कि टूल द्वारा बताई गई एक सेल गणना है ) 12.7912457912458 में विभाजित है। यह उपकरण द्वारा रिपोर्ट किया गया एक गलत औसत है।

अपने खुद के खिलौना आकार ग्रिड परीक्षण के परिणाम:

यहाँ छवि विवरण दर्ज करें


1
मैं पुष्टि करता हूं कि मुझे 10.3, NODATA और "MEAN" के साथ एक ही समस्या है
radouxju

इसकी पुष्टि करने के लिए दोनों को धन्यवाद। लेकिन औसत मूल्य में अंतर एक तरफ, क्या मैं यह मानने में गलत हूं कि परिणाम वास्तव में कोई मूल्य नहीं होना चाहिए, लेकिन 'नोडा'? उपकरण का विवरण मुझे विश्वास करने के लिए प्रेरित करता है। कहते हैं: "NODATA - किसी विशेष क्षेत्र के भीतर, यदि कोई NoData कोशिकाएं मूल्य रेखापुंज में मौजूद हैं, तो यह माना जाता है कि उस क्षेत्र के सभी कक्षों के लिए सांख्यिकीय गणना करने के लिए अपर्याप्त जानकारी है; इसलिए, पूरे क्षेत्र को NoData मान प्राप्त होगा; आउटपुट रैस्टर पर। " चूंकि "NODATA" के साथ एक पिक्सेल है, जोनल आँकड़े भी "NODATA 'होना चाहिए। सही।
G-विज़ार्ड

2
@ जी-विज़ार्ड, आप सही हैं, जैसा कि टूल विवरण में कहा गया है। कुछ हद तक # DIV / 0 के अनुरूप है! एक्सेल में।
c0ba1t

1

एक अन्य उत्तर के समान , अपने आँकड़ों की गणना करने के लिए, रैम्प डेटा को NumPy नकाबपोश सरणियों में ले जाएँ। एक ही आकार के साथ दो ओवरलेइंग चूहों को मानते हुए, यह सरल है:

import numpy as np
zones = arcpy.RasterToNumPyArray("zones")
value = np.ma.masked_equal(arcpy.RasterToNumPyArray("value"),
                           arcpy.Raster("value").noDataValue)
print("Zone\tCount\tNoData\tMean")
for z in np.unique(zones):
    sel = (zones == z)
    print z, sel.sum(), value.mask[sel].sum(), value[sel].mean()

दिखाता है:

Zone    Count   NoData  Mean
61131   53   0   8.92452830189
61154   421   1   9.04523809524
61207   1   0   8.0
61317   35   0   7.2
61644   644   0   7.90838509317
61677   12   0   7.41666666667
61789   7   0   9.0
61871   193   0   7.98445595855
187472   349   0   8.5787965616
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.