Intro

The state of food security in the United States is an under-discussed topic in this country, particularly given the overall perception among policy leaders that the economy is in a good place. This contrasts sharply with average American views that the economy is not doing well. What drives this divergence in perception? And how does it show up in the day-to-day struggle among some Americans to satisfy basic needs? I’ve conducted an analysis to identify some of the variables that might be driving food insecurity in the United States. ## Sources

Year-over-year state level inflation figures: https://www.jec.senate.gov/public/index.cfm/republicans/state-inflation-tracker

SNAP benefits tracker, US Department of Agriculture https://www.fns.usda.gov/pd/supplemental-nutrition-assistance-program-snap

State level Adult Obesity Prevalence, Center for Disease Control https://www.cdc.gov/obesity/data/prevalence-maps.html

Household Pulse Survey - Food Sufficiency for Households, US Census Bureau https://www.census.gov/data/experimental-data-products/household-pulse-survey.html

Centers for Medicare & Medicaid Services, National Health Expenditure Data, state-level per capita health care spend https://www.cms.gov/data-research/statistics-trends-and-reports/national-health-expenditure-data

Data

I was able to find relevant state-level survey results from the Census Bureau related to food sufficiency over the last week, combining responses across age, gender, presence of children, and poverty level for respondents who answered “Sometimes not enough to eat” or “Often not enough to eat” for every state and DC. I generated per capita averages for each state by combining with state-level population data, i.e. the percent of people in a given state who are food insecure. I did the same for households with children. I combined this data with other relevant variables that I wanted to assess: obesity prevalence, per capita health care expenditures, SNAP (food stamps) participation numbers, and state-level inflation numbers. I combined all of the data into a single csv file that I read into R above.

Plots

Let’s first take a look at the state-level food insecurity percentages.

ggplot(state_insec) +
  geom_bar(aes(x = state, y = pct_pop_insecure, fill = -pct_pop_insecure), stat = "identity", position = "dodge", width = .9) + coord_flip() + theme(legend.position = "none", text = element_text(size=6)) + labs( title = "State-level food insecurity per capita (US average: ", x = "", y = "", fill = "Source")

ggplot(state_insec) +
  geom_bar(aes(x = state, y = pct_insecure_w_child, fill = -pct_insecure_w_child
), stat = "identity", position = "dodge", width = .9) + coord_flip() + theme(legend.position = "none", text = element_text(size=6)) + labs( title = "State-level food insecurity per capita among households with children", x = "", y = "", fill = "Source")

On a per capita basis, no state is doing worse on fostering food security than are Texas, Georgia, and Nevada. These states improve moderately when food insecurity among households with children are assessed, a metric in which Wisconsin, Vermont, and Wyoming perform the worst. We could read this to mean that households with children are prioritized for SNAP (food stamps) benefits in Texas, Georgia, and Nevada, but we can also check for ourselves, since we pulled those numbers into our dataset.

ggplot(state_insec) +
  geom_bar(aes(x = state, y = snap_pct, fill = -pct_insecure_w_child
), stat = "identity", position = "dodge", width = .9) + coord_flip() + theme(legend.position = "none", text = element_text(size=6)) + labs( title = "State-level percentage of SNAP beneficiaries", x = "", y = "", fill = "Source")

This is perhaps not what we expected, with DC and New Mexico having by far the highest SNAP participation rate among their people.

Rather than mapping out each state for each age range, demographic, and socioeconomic group, let’s first delve into the relationship between the between indicators of poverty and food insecurity across all states, and drill down into variables that appear to be linked.

insec <- subset(state_insec, select = -c(1) )
cor_matrix <- cor(insec[, sapply(insec, is.numeric)], use = "complete.obs")

corr1 <- round(cor(cor_matrix), 1)

ggcorrplot(corr1)

The image above paints a difficult picture, with very strong correlations across all demographics and socioeconomic backgrounds, a perpetual misery cycle that appears to follow individuals as they age. This is reinforced by the moderate relationship that households with children have with each and every demographic variable, a reality that likely means that this level of poverty follows children through adulthood and drives SNAP participation later in life.

A couple of other notes here; first, there is a moderate positive correlation between adult obesity rate and percent of population that experiences food insecurity. I had an idea that this might be the case, and that’s why I tracked down the obesity data to include it for analysis. The suggestion here is that this represents an overall nutrition crisis. Not only are poor Americans not getting enough to eat. What they are eating is imperiling their health. Additionally, the positive relationship between year-over-year inflation and the percent of the population experiencing food insecurity tells the sad story of how disproportionately the poor bear the burden of high inflation, which really represents a tax that hits lower-income Americans the hardest.

Lastly, one bright area. It seems as though there is a strong negative correlation between per capita healthcare spend and percent insecure. While this doesn’t necessarily chart a course for us, it could argue for a pilot program related to investments in early intervention programs targeted on health care that could help people avoid this sad cycle of hunger and poverty.