Preamble

We are lobbying you, our Congressional Representatives, to fund Universal Daycare for children who are too young to enter Kindergarten.

We’ll demonstrate a correlation exists between poverty and hunger, then show how children, especially young children, disproportionately experience poverty, and therefore food insecurity, compared to adults.

The solution is to fund Universal Daycare for children from 3 months of age in order to bridge the gap before Kindergarten and school meal programs, which also should be expanded to address food insecurity for children between 5 and 17 years of age.




From Poverty, Hunger

Look at how poverty and hunger are distributed across our States. We chart each State’s prevalence of poverty and hunger below and see how as poverty rises, so too does hunger.




Postamble

Thank you for your time, Representatives.

I’ll be at the champagne and oyster shucking bar if you have any questions.

We do have campaign funding options.


Libraries used

We used the following libraries:
tidyverse as a cohesive ecosystem of data tools
readr to read data into R
maps and mapproj to make maps
viridis to access effective color scales
scales to adjust axis formats
gridExtra to display faceted graphs


Data used

We were tasked to ‘locate and source data that reflects food security and nutrition by state broken down by men, women, children and by age groups.’ The following resources were promising but I wasn’t able to isolate the data for my own use and a long search didn’t turn up a viable alternative.
https://www.ers.usda.gov/topics/food-nutrition-assistance/food-security-in-the-u-s/key-statistics-graphics/
https://map.feedingamerica.org/
https://frac.org/hunger-poverty-america
https://data.ers.usda.gov/reports.aspx?ID=17826

Instead I was able to source data from classmates but wasn’t able to trace where they obtained the data:
https://rpubs.com/lindaqiao/1173093
https://rpubs.com/Jlok17/1176000
https://rpubs.com/MikhailB/1173715

We decided to use Qiao’s data from the point of import to proceed.


Data preparation

Data preparation largely consisted of building polygons to plot data in the shape of a map of the USA. Additionally we used algebra to tease out the percent of food insecurity prevalence in adults, 18 and over.


Self Critique

I wish I had enough lead time to ask the other students where they had sourced their data so I could have a clear path from data origin to end results in this assignment.

The horizontal line at 10% in the chart showing children experiencing higher rates of poverty than adults was intentionally placed to highlight the disparity without misleading the viewer by having the y-axis start at 10%. A gray area but effective.

I specifically used ‘hunger’ instead of ‘food insecurity’ to be evocative.

I used no new references however I should maintain a list of staple references from past assignments since they continue to inform my work.



Code Appendix


# Libraries used
library(tidyverse)
library(readr)
library(maps)
library(mapproj)
library(viridis)
library(scales)
library(gridExtra)

# Load Data
qiao1 <- read_csv("https://github.com/yinaS1234/data-608/blob/main/S6/c1.csv?raw=true")
qiao2 <- read_csv("https://github.com/yinaS1234/data-608/blob/main/S6/c2.csv?raw=true")

# Build framework for plotting USA map
states <- map_data("state")
poverty <- qiao1 %>%
  mutate(state = str_to_lower(state)) %>% 
  rename(region = state)
poverty.geo <- merge(states, poverty, sort = FALSE, by = "region")
poverty.geo <- poverty.geo[order(poverty.geo$order), ]

# Plot1 - Poverty map
plot1 <- ggplot(poverty.geo, aes(long, lat)) +
  geom_polygon(aes(group = group, fill = poverty_rate)) +
  scale_fill_viridis("Poverty", option='plasma') +
  coord_map() +
  theme_void()

# Plot2 - Hunger map
plot2 <- ggplot(poverty.geo, aes(long, lat)) +
  geom_polygon(aes(group = group, fill = food_insecurity_prevalence)) +
  scale_fill_viridis("Hunger") +
  coord_map() +
  theme_void() 

# Plot3 - Correlation between poverty and hunger
plot3 <- ggplot(poverty, aes(poverty_rate, food_insecurity_prevalence)) +
  geom_point() +
  geom_smooth() +
  ggtitle("Our States: a Correlation between Poverty and Hunger") + 
  ylab("Hunger") +
  xlab("Poverty Rate") +
  theme_minimal() +
  scale_y_continuous(labels = label_percent(scale=1)) +
  scale_x_continuous(labels = label_percent(scale=1)) +
  theme(plot.title = element_text(size=12))

# Plot poverty-hunger connection
grid.arrange(plot1, plot2, plot3, ncol=2)

# Prepare age related data
age <- filter(qiao2, Year > 2020)
age <- age %>% 
  select(State, POVALL_2021, PCTPOVALL_2021, POV017_2021, PCTPOV017_2021, PCTPOV517_2021, PCTPOV04_2021)
age <- age %>% 
  rename(n_all=POVALL_2021, pct_all=PCTPOVALL_2021, n_under18=POV017_2021, pct_under18=PCTPOV017_2021, pct_5to17=PCTPOV517_2021, pct_under5=PCTPOV04_2021)

# Calculate percent in poverty for adults 18 and over
age$pct_18plus <- (age$n_all-age$n_under18)/(age$n_all/age$pct_all-age$n_under18/age$pct_under18)

# Graph children experiencing higher rates of poverty than adults
age %>%
  summarize('Children under 5'=mean(pct_under5), 'Children Five to 17'=mean(pct_5to17), Adults=mean(pct_18plus)) %>%
  pivot_longer(everything()) %>%
  ggplot(aes(x=name, y=value)) +
    geom_col() +
    geom_hline(yintercept = 10) +
    ggtitle("Children Experience Poverty at Higher Rates than Adults ") + 
    ylab("Percent in Poverty") +
    theme_minimal() +
    theme(axis.title.x = element_blank()) +
    scale_y_continuous(labels = label_percent(scale=1)) +
    theme(plot.title = element_text(size=16))