Food Apartheid, a term initially coined by food justice activist Karen Washington, refers to a systemic segregation that perpetuates disparities in access to nutritious food, rooted in systemic injustices. While sharing similarities with the concept of food deserts, the term food apartheid is gaining prominence as it better encapsulates the structural injustices and inequities in food access faced by low-income communities and communities of color. Unlike food deserts, which merely describe geographical areas with limited access to healthy food, food apartheid acknowledges the deep-seated history of racial discrimination and injustice.
Chicago, despite being the third largest city in the United States, grapples with severe food apartheid issues, with one in five households in the Chicago area experiencing food insecurity, as reported by the Greater Chicago Food Depository. This problem is particularly acute in the community areas of the south side of Chicago, where a majority of residents are African American. Insufficient access to grocery stores exacerbates food insecurity in these areas, with existing stores dwindling in number. The presence of a grocery store in a community area plays a pivotal role in food accessibility, offering a diverse array of nutritious groceries, including fresh produce, meat, deli items, and packaged goods, all essential components of a healthy diet.
In this analysis, I focus on the distribution of grocery store locations in Chicago and their potential relationship with demographic factors such as race and socioeconomic status. To address the main question of which areas of Chicago are affected by food apartheid and the unique characteristics of these areas, I computed Moran’s I to assess the spatial autocorrelation of grocery store locations. Additionally, I conducted spatial regression using spatial autoregressive (SAR) models to examine the relationship between grocery store locations and various independent factors while accounting for spatial effects.
| ID | Name |
|---|---|
| 1 | ROGERS PARK |
| 2 | WEST RIDGE |
| 3 | UPTOWN |
| 4 | LINCOLN SQUARE |
| 5 | NORTH CENTER |
| 6 | LAKE VIEW |
| 7 | LINCOLN PARK |
| 8 | NEAR NORTH SIDE |
| 9 | EDISON PARK |
| 10 | NORWOOD PARK |
| 11 | JEFFERSON PARK |
| 12 | FOREST GLEN |
| 13 | NORTH PARK |
| 14 | ALBANY PARK |
| 15 | PORTAGE PARK |
| 16 | IRVING PARK |
| 17 | DUNNING |
| 18 | MONTCLARE |
| 19 | BELMONT CRAGIN |
| 20 | HERMOSA |
| 21 | AVONDALE |
| 22 | LOGAN SQUARE |
| 23 | HUMBOLDT PARK |
| 24 | WEST TOWN |
| 25 | AUSTIN |
| 26 | WEST GARFIELD PARK |
| 27 | EAST GARFIELD PARK |
| 28 | NEAR WEST SIDE |
| 29 | NORTH LAWNDALE |
| 30 | SOUTH LAWNDALE |
| 31 | LOWER WEST SIDE |
| 32 | LOOP |
| 33 | NEAR SOUTH SIDE |
| 34 | ARMOUR SQUARE |
| 35 | DOUGLAS |
| 36 | OAKLAND |
| 37 | FULLER PARK |
| 38 | GRAND BOULEVARD |
| 39 | KENWOOD |
| 40 | WASHINGTON PARK |
| 41 | HYDE PARK |
| 42 | WOODLAWN |
| 43 | SOUTH SHORE |
| 44 | CHATHAM |
| 45 | AVALON PARK |
| 46 | SOUTH CHICAGO |
| 47 | BURNSIDE |
| 48 | CALUMET HEIGHTS |
| 49 | ROSELAND |
| 50 | PULLMAN |
| 51 | SOUTH DEERING |
| 52 | EAST SIDE |
| 53 | WEST PULLMAN |
| 54 | RIVERDALE |
| 55 | HEGEWISCH |
| 56 | GARFIELD RIDGE |
| 57 | ARCHER HEIGHTS |
| 58 | BRIGHTON PARK |
| 59 | MCKINLEY PARK |
| 60 | BRIDGEPORT |
| 61 | NEW CITY |
| 62 | WEST ELSDON |
| 63 | GAGE PARK |
| 64 | CLEARING |
| 65 | WEST LAWN |
| 66 | CHICAGO LAWN |
| 67 | WEST ENGLEWOOD |
| 68 | ENGLEWOOD |
| 69 | GREATER GRAND CROSSING |
| 70 | ASHBURN |
| 71 | AUBURN GRESHAM |
| 72 | BEVERLY |
| 73 | WASHINGTON HEIGHTS |
| 74 | MOUNT GREENWOOD |
| 75 | MORGAN PARK |
| 76 | OHARE |
| 77 | EDGEWATER |
To begin with, I created a map of the community areas of Chicago. There are a total of 77 community areas with each area surrounded by red borderlines. The names of community areas corresponding to the ID can be found in the table.
| ID | Name | Number of Grocery Stores |
|---|---|---|
| 8 | NEAR NORTH SIDE | 15 |
| 19 | BELMONT CRAGIN | 13 |
| 22 | LOGAN SQUARE | 12 |
| 28 | NEAR WEST SIDE | 9 |
| 6 | LAKE VIEW | 9 |
| 7 | LINCOLN PARK | 8 |
| 1 | ROGERS PARK | 7 |
| 3 | UPTOWN | 7 |
| 30 | SOUTH LAWNDALE | 7 |
| 31 | LOWER WEST SIDE | 7 |
| 24 | WEST TOWN | 6 |
| 25 | AUSTIN | 6 |
| 32 | LOOP | 6 |
| 14 | ALBANY PARK | 5 |
| 15 | PORTAGE PARK | 5 |
| 2 | WEST RIDGE | 5 |
| 63 | GAGE PARK | 5 |
| 77 | EDGEWATER | 5 |
| 41 | HYDE PARK | 4 |
| 23 | HUMBOLDT PARK | 4 |
| 44 | CHATHAM | 4 |
| 59 | MCKINLEY PARK | 4 |
| 5 | NORTH CENTER | 4 |
| 61 | NEW CITY | 4 |
| 75 | MORGAN PARK | 4 |
| 4 | LINCOLN SQUARE | 3 |
| 42 | WOODLAWN | 3 |
| 16 | IRVING PARK | 3 |
| 17 | DUNNING | 3 |
| 34 | ARMOUR SQUARE | 3 |
| 51 | SOUTH DEERING | 3 |
| 56 | GARFIELD RIDGE | 3 |
| 57 | ARCHER HEIGHTS | 3 |
| 62 | WEST ELSDON | 3 |
| 66 | CHICAGO LAWN | 3 |
| 71 | AUBURN GRESHAM | 3 |
| 12 | FOREST GLEN | 2 |
| 20 | HERMOSA | 2 |
| 21 | AVONDALE | 2 |
| 26 | WEST GARFIELD PARK | 2 |
| 29 | NORTH LAWNDALE | 2 |
| 33 | NEAR SOUTH SIDE | 2 |
| 43 | SOUTH SHORE | 2 |
| 45 | AVALON PARK | 2 |
| 46 | SOUTH CHICAGO | 2 |
| 52 | EAST SIDE | 2 |
| 58 | BRIGHTON PARK | 2 |
| 65 | WEST LAWN | 2 |
| 68 | ENGLEWOOD | 2 |
| 70 | ASHBURN | 2 |
| 73 | WASHINGTON HEIGHTS | 2 |
| 35 | DOUGLAS | 1 |
| 39 | KENWOOD | 1 |
| 40 | WASHINGTON PARK | 1 |
| 11 | JEFFERSON PARK | 1 |
| 13 | NORTH PARK | 1 |
| 10 | NORWOOD PARK | 1 |
| 49 | ROSELAND | 1 |
| 50 | PULLMAN | 1 |
| 53 | WEST PULLMAN | 1 |
| 55 | HEGEWISCH | 1 |
| 60 | BRIDGEPORT | 1 |
| 64 | CLEARING | 1 |
| 67 | WEST ENGLEWOOD | 1 |
| 69 | GREATER GRAND CROSSING | 1 |
| 74 | MOUNT GREENWOOD | 1 |
| 76 | OHARE | 1 |
| 9 | EDISON PARK | 1 |
| 36 | OAKLAND | 0 |
| 37 | FULLER PARK | 0 |
| 38 | GRAND BOULEVARD | 0 |
| 18 | MONTCLARE | 0 |
| 27 | EAST GARFIELD PARK | 0 |
| 47 | BURNSIDE | 0 |
| 48 | CALUMET HEIGHTS | 0 |
| 54 | RIVERDALE | 0 |
| 72 | BEVERLY | 0 |
After creating the map of Chicago, I proceeded to plot the locations of grocery stores across the city in Figure 2, with each dot representing a grocery store location. A visual inspection of Figure 2 already suggests a higher concentration of grocery stores in the north side of Chicago compared to the south side. Table 2 below provides a breakdown of community areas alongside the corresponding number of grocery stores in each area. While several areas boast more than 10 grocery stores, there are also community areas devoid of any such establishments. In Figure 3, I filtered the community areas to highlight those with either more than 10 (depicted in green) or zero (depicted in red) grocery stores. This visualization underscores the disparities in grocery store distribution across community areas, particularly noting that those areas shaded in red predominantly lie in the south side of the city. However, it’s crucial to refrain from drawing definitive conclusions based solely on this map, as it merely represents a count of grocery stores in each area without accounting for various other factors. For instance, although both areas 18 and 54 register zero grocery stores, the accessibility to grocery stores may vary significantly between them. This discrepancy could be attributed to several grocery stores situated near the border of areas 18 and 19, potentially offering better accessibility to residents in area 54 compared to those in area 18. Hence, it’s imprudent to assume the same level of accessibility to grocery stores across all nine red community areas.
Based on the preliminary visualizations, there appears to be a tendency for values in close proximity to one another to exhibit similarity, as observed with the number of grocery stores in each community area. Recognizing that the spatial distribution of grocery stores does not display a completely random pattern, I opted to quantify this spatial pattern or clustering by computing Moran’s I statistic.
The Moran’s I statistic serves as the correlation coefficient
measuring the relationship between a variable, such as the number of
grocery stores, and its neighboring values. However, before computing
this correlation, it’s essential to define the neighbors. While various
methods exist for constructing a list of neighbors, I employed the
poly2nb function, which generates a neighbors list based on
regions with contiguous boundaries, indicating the sharing of one or
more boundary points. Subsequently, spatial weights are added to this
neighbors list, a crucial step aimed at normalizing the Moran’s I
statistic. This normalization ensures that the range of possible Moran’s
I values falls within -1 and 1, facilitating meaningful
interpretation.
##
## Call:
## lm(formula = num_grocery_lag ~ num_grocery, data = chicago_sf)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.1069 -1.0166 -0.3729 0.6489 5.0663
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.26701 0.27986 8.100 7.68e-12 ***
## num_grocery 0.32102 0.06381 5.031 3.25e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.69 on 75 degrees of freedom
## Multiple R-squared: 0.2523, Adjusted R-squared: 0.2423
## F-statistic: 25.31 on 1 and 75 DF, p-value: 3.248e-06
Once the neighbors list is established and the weights are determined, we can calculate the aggregated values for each neighborhood, representing the total number of grocery stores in the community area. This aggregated value is known as a spatially lagged value (\(x_{lag}\)). Utilizing the number of grocery stores in each community area of Chicago, as computed in the setup code chunk above, I generated a plot illustrating the summarized neighborhood value of the number of grocery stores (\(X_{lag}\)) against the number of grocery stores for each county (\(X\)). The Moran’s I coefficient between \(X_{lag}\) and \(X\) represents the slope of the least squares regression line that best fits the points after normalizing the spread between both sets of data, a computation performed via linear regression.
There is a slightly more convenient way to compute the Moran’s I
statistic, which is to use a built-in moran.test function
that would conveniently return the statistic. Steps are as follows:
##
## Moran I test under randomisation
##
## data: chicago_sf$num_grocery
## weights: chicago_nbw
##
## Moran I statistic standard deviate = 4.7576, p-value = 9.796e-07
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic Expectation Variance
## 0.321015134 -0.013157895 0.004933677
The findings from both the linear regression and
moran.test indicate a consistent Moran’s I value of 0.287.
Despite the relatively weak strength of this relationship, it suggests
the presence of positive spatial autocorrelation. When there is minimal
association between \(X_{lag}\) and
\(X\), the slope tends to approach
flat, consequently yielding a Moran’s I value close to 0.
With a Moran’s I value of 0.287 calculated, the next step is to assess its significance. To achieve this, I conducted a Monte Carlo test, wherein attribute values (in this case, the number of grocery stores) are randomly assigned to community areas within the dataset. For each permutation of attribute values, a Moran’s I value is computed, resulting in a sampling distribution of Moran’s I values under the Null Hypothesis, which assumes that attribute values are randomly distributed across Chicago. The observed Moran’s I value is then compared to this sampling distribution. Below are the null and alternative hypotheses for this significance testing.
\[H_O: \text{There is NO spatial autocorrelation; Moran's I is close to 0}\]
\[H_A: \text{There EXISTS spatial autocorreation; Moran's I} \neq 0\]
## $I
## [1] -0.001856937
##
## $K
## [1] 6.277104
##
## Monte-Carlo simulation of Moran I
##
## data: chicago_sf$num_grocery
## weights: chicago_nbw
## number of simulations + 1: 500
##
## statistic = 0.32102, observed rank = 500, p-value = 0.002
## alternative hypothesis: greater
The last step is to create a visualization of 499 sampling distribution of simulated Moran’s I values in histogram and see where the observed Moran’s I value of 0.287 lies.
The histogram illustrates that the observed value of 0.287 deviates significantly from what one would anticipate if the distribution of the number of grocery stores across each community area of Chicago were random. Furthermore, with a p-value of 0.002, we can confidently reject the null hypothesis, leading us to conclude that there exists spatial autocorrelation in the number of grocery stores among the community areas of Chicago.
To delve deeper into the potential associations between grocery store
locations and other features, I incorporated a spatial regression
component, which briefly introduces the utilization of the SAR
(Simultaneous Autoregressive Model). To execute this regression, I
employed the lagsarlm function, structured as follows:
\[Y = \beta_0 + \beta_1X + \rho\sum w_iY_i\]
Here, \(\rho\) characterizes the level of correlation with neighboring data points, \(w_i\) represents the weight assigned to neighbor \(i\), and \(\beta_i\) denotes the regression coefficients for the variables of interest, akin to those in linear regression. If the \(\rho\) value approaches 1, it signifies a pronounced spatial autocorrelation among the variables of interest, necessitating its consideration in the analysis. Conversely, if the \(\rho\) value nears 0, it indicates minimal spatial autocorrelation among the variables, enabling reliance on the results of ordinary least squares (linear) regression for analysis purposes.
I specifically chose to analyze data regarding White and African
American populations to maintain conciseness in this analysis,
considering their starkly contrasting distribution across community
areas. Notably, Figure 8 and Figure 10 highlight distinct spatial
patterns: White residents predominantly inhabit the northern Chicago
regions, constituting over 40% of the total population in these areas,
while African American residents cluster predominantly in the southern
parts, accounting for 60% to 80% of the population in those regions.
This observation suggests a notable spatial correlation in residents’
racial composition, wherein individuals of the same race tend to reside
in closer proximity, as illustrated in the aforementioned figures. Upon
examining the scatter plots in Figure 9 and 11, a subtle positive linear
relationship between the number of grocery stores and the percentage of
White residents, and a slight negative linear association with the
percentage of African American residents in each community area, become
apparent. Nonetheless, it’s imperative to conduct significance testing
before drawing any definitive conclusions.
Figure 14 depicts the average per capita income for each community area, revealing a general trend of slightly higher incomes in the northern regions compared to the southern areas of Chicago. Notably, specific neighborhoods in the northeast exhibit considerably higher average per capita incomes, forming distinct clusters within the city. Meanwhile, Figure 15 outlines the poverty rate (individuals earning less than $25,000 annually) across community areas. It’s evident that areas with high poverty rates correspond to fewer grocery stores, with a predominant African American population in these regions. Examining the scatter plots in Figures 13 and 15, a positive linear relationship emerges between the number of grocery stores and per capita income, while a negative association is observed between the number of grocery stores and the poverty rate in each community area. However, it’s crucial to refrain from drawing conclusions until significance testing is conducted.