library(tidyverse)
income <- tibble(income_range = c("0-74",
"75-145",
"150-325",
"325+"),
count = c(125,
170,
215,
250))
# requires dplyr 1.0.0
# install.packages()
income %>%
separate(col = income_range,
into = c("lower", "upper")) %>%
mutate(lower = as.numeric(lower),
upper = as.numeric(upper)) %>%
rowwise() %>%
mutate(med = median(c(lower, upper), na.rm = TRUE))
#> # A tibble: 4 x 4
#> # Rowwise:
#> lower upper count med
#> <dbl> <dbl> <dbl> <dbl>
#> 1 0 74 125 37
#> 2 75 145 170 110
#> 3 150 325 215 238.
#> 4 325 NA 250 325
Created on 2020-06-01 by the reprex package (v0.3.0)