Calculating bits of population
From Reporting Cookbook: www.forjournalists.com/cookbook
ArcGIS and other mapping programs offer easy ways of calculating buffers, such as letting you draw a circle with a 1,000 foot radius from some points. The software doesn't always make it easy to figure out what's within those buffers. This describes how to calculate area (land), population and by extension housing with reasonable accuracy.
This only works for man-made geographies. If a chlorine tanker derails in your hometown, you can figure out how many people live with the two-mile evacuation zone. You can't use that or any other circle to calculate how many people were hit by the chlorine, because the chemical is going to be blown around by the wind in every way but in a perfect circle.
These techniques were tested on sex-offender residency restrictions, such as 2,500 feet from schools, daycares and parks.
Contents |
[edit] Preparation
Details of these instructions conform with ArcGIS 9.1:
Start by getting the smallest chunks of population you can find, which may be Census blocks or Census block groups.
Verify your buffers are not overlapping. You can use the identify tool to confirm your buffers are unified. If not, you probably just used Window: Toolbox: Data Management Tools: Merge to "merge" the buffers. It sounds like you did the right thing in bringing your buffers together, but there's a crucial step to eliminate overlapping polys. Use the toolbox' Generalization: Dissolve.
Run one more verification of your buffers. There's a good chance you'll need to clip out the buffers from another geography. If you're calculating sex offender ban in a community, you shouldn't calculate over the city line; find a city outline and use the Toolbox: Analysis: Extract: Clip. Likewise, if you're trying to evaluate areas of land, you'll probably want to clip out the ocean for a seaside community.
[edit] First rough analysis
Your analysis begins with a ballpark guesstimate that can help verify your later, more-accurate results. This method might be all you need to do if you're dealing with very large radii, such as people who live within 10 miles of a coal power plant across the United States. Begin the rough estimate simply by selecting all the block groups that have their centers within the buffer. In some versions of ArcGIS, it looks like Selection: Select by Location: layers ... that have their center in. Pick your population/Census layer; right click, open attributes table. At the bottom, make sure you pick "Selected" rather than "All." Find the field/column with the population for each line. Right-click on the header row and select statistics. You're looking for the sum. Write this down somewhere, nerar the word guesstimate.
[edit] More accurate analysis
The better but more difficult method uses small geographic blocks and apportions population to them according to coverage of the buffers. You calculate the population proportionally to the amount of the Census geography covered by the buffers.
If all of a Census block falls within a buffer, all of the population is counted. If 54 percent of a Census block with 150 people falls within a buffer zone, you should count 81 people. It won't be perfect -- people aren't going to be evenly distributed within your Census block -- but it'll be a fair approximation.
It's easier to tackle the problem in reverse: Don't look at the buffers to see how many people are inside. Look at the population geography to determine how much is covered by the buffers.
ArcGIS 9.1 does not offer an easy method to calculate area; it takes a little bit of work. Directions are available via the built-in help.
Open your Census layer. Right-click on the layer name to get into the attributes table. Note you probably already have a field named Area, which isn't going to reduce the confusion. Make a new field/column by clicking on "Options" on the bottom and then Add Field. Call this one MyFullArea, type Double. Scroll over to the new field/column.
Right-click on the field header ("MyFullArea") and select Calculate Values. There's a small check-box, "Advanced," above a large blank box. Fill in the Advanced check-box. Inside the "Pre-logic VBA Script Code," paste the following:
- Dim dblArea as double
- Dim pArea as IArea
- Set pArea = [shape]
- dblArea = pArea.area
Shake your head nervously. You see one unfilled box at the bottom, "MyFullArea=". Fill that in with "dblArea", without the quotes. You can now click the OK button, nervously. It calculates. Numbers appear. Close the Attributes table. Breathe out.
In preparing your buffers, you probably clipped them out against a municipal or state border so portions outside the lines did not count. Think here about whether you should do the same thing here with your Census geography, which may not follow municipal or other geographies. You can again use Toolbox: Analysis: Extract: Clip against your political geography layer.
Now, the part you've been waiting for: How much of your Census zones is covered by the buffers? Use Toolbox: Analysis: Extract: Clip, input Census, clip features buffers. Your Census zones now conform to the buffers.
This is a good time to clean up: The only Census layer you need is the one that was just clipped against the buffer. Rename it to something useful.
Now, right-click the Census layer and go back into the Attributes table.
Use Options: Add Field: name of MyClipArea, type Right-click the field header and select Calculate Values. Again, with the Advanced checkbox, the VB script from above, the last bit of "dblArea". Click OK. The new MyClipArea field should get some numbers, many of which should look similar to MyFullArea.
Now you need to apportion the population according to the ratio of the area inside the buffers compared to the entire area of the Census geography. This is, fortunately, the easy part.
Use Options: Add Field, name MyClipPop, type Float (not Double). Click OK.
Scroll through your attributes table until you find the field with the actual population (POP_2000?). Write this name down. Scroll back over to the end, to your new, empty, MyClipPop field. Right-click on the header and select Calculate Values. You can type this in yourself, or use the list of fields and the math operations to come up with something similar to this:
- [POP_2000] * [MyClipArea] / [MyFullArea]
Click OK.
Suddenly, you have the computer's estimate of how many people live in the buffered Census area, line-by-line. Now you need to know the total.
Right-click on the MyClipPop header. Select Statistics. Find the sum. It will look odd --something like 48241.822821 -- but that's telling you that about 48,242 people live within the buffer zones. This is the good time to round. Write this number on your Post-It next to the phrase "Good calculation."
Don't trust that number yet. You need to compare this to your "guesstimate" figure from the first step involving the Census blocks with their centers inside a buffer. Is it reasonably close?
Finally, you need to explain this to the readers. You may not need to go into full detail. One reporter/grad student used this paragraph: "Population was estimated in two ways, both using Census 2000 "block-level" data. Both methods estimated that 82 percent of the population would be affected under 2,500-foot buffers. The methods diverged more on the 1,000-foot buffers, showing some 41.8 percent and 45.5 percent of the population."
To write that paragraph, the reporter calculated ratio of clipped versus full area was calculated using the Statistics: Sum feature again. He also calculated the ratio of clipped population to full population using the same method.
[edit] Examples
- Sex-offender residency restrictions in Taunton, Mass. by Mike Stucka as a Northeastern University project, with reporting by Rebecca Hyman of the Taunton Call






