2

I'm quite new to GIS data, and I currently have an issue where I have data on a specific variable coded in one set of geographic units and I need to convert it to another set of geographic units. There is overlap between multiple units of the old geography to multiple units in the new geography. What methods are available to reapportion the variable from the old geography into the new geography? I'm aware of the spatial overlap method, but this really distorts my data in a way that isn't meaningful. I'm working in R with shapefiles and SpatialPolygonsDataFrames.

If a concrete example helps, an analogous situation would be if I collected data from a survey of law enforcement agencies in the US that reported the number of guns confiscated during arrests. Agencies would include state patrol, city police, the ATF, etc. There is a an overlap in the jurisdictions of these agencies, some nested, some not. How could I reapportion the survey results into a different geography, like US zip codes? Using area overlap seems inappropriate in this situation, since the variable itself is dependent on more than just the jurisdiction area.

Related Question: There is this question, however, the answer focuses only on area-style apportions.

3
  • Try this github.com/joelgombin/spReapportion
    – mdsumner
    Commented Mar 22, 2017 at 4:52
  • @mdsumner Thank you for the link to an implementation. However, I'm also looking for some insight into the theory of apportionment. This function can be passed a weight_matrix; what methods are available to develop those weights? Are there other methods? This is the sort of question I'm asking, beyond just an implementation.
    – Ashe
    Commented Mar 22, 2017 at 13:30
  • If you aren't using spatial overlap as a weighting method, you probably want some sort of table join. You need something to weight how the portion from form dataset A is assigned to dataset B.
    – Mox
    Commented Nov 7, 2023 at 13:12

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.