Aktualizacja: Błąd został naprawiony w wersji ArcGIS 10.4
Korzystam z ArcGIS 10.2.2, aby określić statystyki strefowe dla wielu stref. Jeśli w rastrze wartości jest jakakolwiek NoData, chcę, aby wyniki strefy były „NoData”, dokładnie tak, jak podano w opisie narzędzi. Ten opis narzędzia stwierdza:
DANE - W obrębie dowolnej strefy tylko komórki, które mają wartość w wartości wejściowej rastra wartości, zostaną użyte do określenia wartości wyjściowej dla tej strefy. Komórki NoData w rastrze wartości zostaną zignorowane w obliczeniach statystycznych.
NODATA - W obrębie dowolnej strefy, jeśli w rastrze wartości istnieją komórki NoData, uznaje się, że nie ma wystarczających informacji do wykonania obliczeń statystycznych dla wszystkich komórek w tej strefie; dlatego cała strefa otrzyma wartość NoData na wyjściowym rastrze.
Proszę spojrzeć na moją konfigurację na tym obrazku:
Używam opcji NODATA z rastrem wartości, który ma jeden piksel NoData, i dlatego oczekuję, że wynikowa wartość strefy (strefa 61154) będzie mieć wartość „NoData”. Zamiast tego otrzymuję wartość 12,74 (zaokrągloną do 13 na obrazie), co dezorientuje mnie na dwóch poziomach: po pierwsze oczekiwałem „NoData”, a po drugie, wynikowa wartość 12,74 jest matematycznie niemożliwa, ponieważ średnia nie może być większa niż maksymalna wartość w rastrze wartości, która w tym przypadku wynosi 10.
Jeśli korzystam z opcji DANE, otrzymuję wartość około 9,1, co ma sens. Przetestowaliśmy to na różnych zestawach danych, komputerach i wersjach ArcGIS.
Czego tu brakuje?
Edytuj / Komentarz dodatkowy: Właśnie zauważyłem, że atrybut „Liczba” jest również nieprawidłowy dla tej konkretnej strefy. Rzeczywiście w tej strefie jest 421 komórek, ale narzędzie liczyło tylko 297. Obliczenie 421 minus 297 daje 124 - co dziwne, jest to „pozycja”, w której znajduje się piksel NoData, jeśli policzy się piksele od lewej górnej do dolnej bezpośrednio w strefie. Narzędzie może źle zliczać liczbę komórek (zbyt nisko), co może wyjaśniać wzrost średniej.
Edycja: Oto link do danych, których używam.
Edycja: Dan Patterson i ja przeprowadziliśmy dalsze debugowanie tutaj na forum ESRI.
Odpowiedzi:
Występuje błąd, który wydaje się odpowiadać temu, co napotykasz - jest zarejestrowany jako BUG-000084883 - Opcja „Ignoruj brak danych w obliczeniach” w statystykach strefowych jako narzędzie tabeli {i narzędzie statystyk strefowych} nie jest honorowana po sprawdzeniu, co powoduje nieprawidłowe wyniki.
Występuje z 10.3 i 10.2.2, ale nie 10.1. Czy wypróbowałeś narzędzie w tej wersji?
źródło
To jest błąd. Coś strasznie nie tak z liczbą komórek.
Prawidłowa średnia (9,0452380952381) razy poprawna liczba niepustych komórek (420) podzielona przez 297 (liczba komórek podana przez narzędzie ) daje 12,7912457912458. To błędna średnia zgłoszona przez narzędzie.
Wyniki mojego testu siatki rozmiarów zabawek:
źródło
Podobnie do innej odpowiedzi , przenieś dane rastrowe do tablic zamaskowanych NumPy, aby obliczyć statystyki. Zakładając dwa nakładające się rastry o tym samym kształcie, jest to proste:
Przedstawia:
źródło