nat100k <- nat %>%
filter(year==2020) %>%
filter(week>=10)
x <- 1
deaths <- 0
while (deaths <100000) {
deaths <- deaths + nat100k$excess_all_cause_deaths[x]
x <- x+1
}
x <- x-1
month_of <- month(nat100k$week_end_date[x], label=T)
day_of <- day(nat100k$week_end_date[x])
print(paste0("We passed 100,000 excess deaths by ", month_of, " ", day_of, ", 2020"))
## [1] "We passed 100,000 excess deaths by May 9, 2020"
nat_latest <- nat %>%
filter(year==2020) %>%
filter(week>=10) %>%
mutate(percent=round(covid19.nchs/excess_all_cause_deaths*100))
nat_latest$percent <- ifelse(nat_latest$percent >100 | nat_latest$percent <0, NA, nat_latest$percent)
nat_table_percent <- nat_latest %>%
select(week_end_date, excess_all_cause_deaths, covid19.nchs, percent)
kable(nat_table_percent, format.args = list(big.mark = ","))
week_end_date | excess_all_cause_deaths | covid19.nchs | percent |
---|---|---|---|
2020-03-07 | -109 | 144 | |
2020-03-14 | -537 | 266 | |
2020-03-21 | 773 | 626 | 81 |
2020-03-28 | 5,537 | 2,852 | 52 |
2020-04-04 | 14,843 | 8,997 | 61 |
2020-04-11 | 21,951 | 14,906 | 68 |
2020-04-18 | 19,787 | 15,220 | 77 |
2020-04-25 | 16,597 | 13,038 | 79 |
2020-05-02 | 12,705 | 10,659 | 84 |
2020-05-09 | 11,686 | 9,864 | 84 |
2020-05-16 | 9,769 | 8,016 | 82 |
2020-05-23 | 7,253 | 6,132 | 85 |
2020-05-30 | 5,772 | 5,007 | 87 |
2020-06-06 | 5,373 | 3,714 | 69 |
2020-06-13 | 4,064 | 2,002 | 49 |
2020-06-20 | -27,719 | 458 |
ggplot(nat_table_percent, aes(x=week_end_date, y=percent)) +
geom_col() +
theme_minimal() +
labs(title="Covid-19 deaths as % of excess deaths")
mar28 <- nat_table_percent %>%
filter(week_end_date==ymd("2020-03-28")) %>%
pull(percent)
apr18 <- nat_table_percent %>%
filter(week_end_date==ymd("2020-04-18")) %>%
pull(percent)
may2 <- nat_table_percent %>%
filter(week_end_date==ymd("2020-05-02")) %>%
pull(percent)
may9 <- nat_table_percent %>%
filter(week_end_date==ymd("2020-05-09")) %>%
pull(percent)
As of May 2 it was 84 percent, compared to 52 percent as of March 28 and 77 percent as of April 18.
At the beginning of the pandemic, only about half of the excess deaths were attributed to covid-19. Since then, that ratio has improved to 4 out of 5.
New York, Massachusetts, New Jersey, DC, Maryland, and Colorado have been better at closing the gap.
states <- read_csv("data/outputs/national_and_state_summary.csv") %>%
filter(state!="US.agg") %>%
rename(covid19.nchs=covid.death.hybrid) %>%
filter(!is.na(week_start_date))
dates <- MMWRweek(states$week_start_date)
states$year <- dates$MMWRyear
states$day <- dates$MMWRday
states$week <- dates$MMWRweek
state_table <- states %>%
filter(year==2020) %>%
filter(week>=10) %>%
mutate(percent=round(covid19.nchs/excess_all_cause_deaths*100))
state_table$percent <- ifelse(state_table$percent > 100 | state_table$percent < 0, NA, state_table$percent)
ggplot(state_table, aes(week_end_date, percent)) +
geom_line() +
facet_geo(~ state, grid = "us_state_grid2") +
ylab("Covid-19 deaths as % of excess deaths") +
labs(title="Covid-19 deaths as % of excess deaths")
South Carolina 30 percent (1087 excess deaths, 326 covid-19) Started out at 11 percent and then reached a high of 63 percent at the end of April but has since declined.
Arizona 40 percent (1424 excess deaths, 565 covid-19) Peaked in mid April but declined since then.
Alabama 63 percent (738 excess, 462 covid) They did better in the second half of April and have been declining since.
Missouri 68 percent (775 excess, 526 covid) Seems like they’re struggling.
Florida 67 percent (2750 deaths, 1838 covid) Same as Arizona. Closed the gap in mid April and have since been declining.
Georgia 64 percent (2006 deaths, 1282 covid) Getting better over time. Last week of data being the exception.
Wisconsin 78 percent (552 deaths, 430 covid) Same as Arizona and Florida. Slightly improved in mid April but have been declining since.
state_percent <- state_table %>%
mutate(date=paste0(month(week_end_date, label=T), " ", day(week_end_date))) %>%
select(state, date, percent) %>%
pivot_wider(names_from="date",
values_from="percent")
datatable(state_percent)
state_totals <- state_table %>%
mutate(date=paste0(month(week_end_date, label=T), " ", day(week_end_date))) %>%
select(state, week, date=week_end_date, excess=excess_all_cause_deaths, covid19=covid19.nchs, percent)
datatable(state_totals, filter="top")