Mam dwa różne zestawy elementów wielokąta (398 spisów ludności i 80 kodów pocztowych), z których każdy łączy się w większą funkcję (hrabstwo USA). Chociaż obszary spisu są mniejsze niż kody pocztowe, nie zwijają się (tj. Zagnieżdżają się w sobie) kody pocztowe.
Moje pytanie - czy istnieje metoda / narzędzie wykorzystujące ArcGIS lub QGIS (lub dowolne oprogramowanie) do osobnego grupowania 398 traktów spisowych i 80 kodów pocztowych w celu utworzenia 10 elementów wielokąta, przy jednoczesnym zminimalizowaniu różnicy między dwoma wynikowymi zestawami 10 elementów wielokąta?
Aby to wyjaśnić, chcę pogrupować 398 traktatów -> 10 funkcji, a następnie osobno pogrupować 80 kodów pocztowych -> 10 funkcji, dzięki czemu mam dwa różne zestawy po 10 funkcji. Chcę zoptymalizować to grupowanie, aby nakładka między tymi dwoma zestawami była zmaksymalizowana (tj. Zminimalizować niedopasowanie).
źródło
Odpowiedzi:
Ponieważ nie ma jasnego ani jednolitego sposobu definiowania powstałych wielokątów, myślę, że musisz je najpierw utworzyć, jak tylko uznasz to za stosowne - używając rozpuszczania na dowolnym atrybucie (istniejącym lub pochodnym) na warstwie spisu lub kodów pocztowych.
Po uzyskaniu powstałych wielokątów, nałóż na nie (przecinaj) każdą z warstw, wykonaj kolejne rozpuszczenie i oblicz swoje statystyki na innych atrybutach.
źródło
Jeśli posiadasz informacje o kodach pocztowych i wyższej hierarchii w bazie danych, możesz to zrobić, łącząc wartości kolumn razem i otrzymując nowy plik kształtów.
źródło
Wydaje mi się, że chcesz zgrupować obszary spisu ludności w 10 klastrów, z tym, że trakty w każdym klastrze sąsiadują ze sobą. W takim przypadku można użyć biblioteki Python klastraPy, która implementuje kilka różnych algorytmów dla klastrowania przestrzennie ograniczonego.
źródło