The Impact of Severe Weather Events in the United States (2001–2011)

Insights into the Most Harmful and Costly Weather Events to Inform Disaster Preparedness and Resource Allocation

Author

Victor .O. Oseji

Published

Jan 2025

Show the code
if (!require("ggplot2")) install.packages("ggplots")
if (!require("dplyr")) install.packages("dplyr")
if (!require("reactable")) install.packages("reactable")
if (!require("reactablefmtr")) install.packages("reactablefmtr")

# Load required libraries
library(dplyr)
library(ggplot2)
library(reactable)
library(reactablefmtr)

storm_data <- data.table::fread('https://d396qusza40orc.cloudfront.net/repdata%2Fdata%2FStormData.csv.bz2') %>% 
  mutate(across(BGN_DATE,\(x) as.Date(x,format = '%m/%d/%Y')))

Introduction

Severe weather events pose significant challenges to communities and municipalities across the United States. These events can result in fatalities, injuries, and substantial economic losses. Understanding which types of weather events are most harmful to population health and which lead to the greatest economic damage is critical for decision-makers responsible for emergency preparedness and resource allocation.

This report analyzes data from the U.S. National Oceanic and Atmospheric Administration (NOAA) Storm Database. The database provides detailed records of major storms and weather events, including their characteristics, the affected regions, and the associated human and economic toll. The analysis addresses two primary questions:

Which types of severe weather events are most harmful to population health in terms of fatalities and injuries? Which types of severe weather events have the greatest economic consequences, considering property and crop damage? By focusing on these questions, this report aims to inform government and municipal managers on the impact of severe weather events, enabling evidence-based prioritization of resources.

Data Processing

The NOAA Storm Database contains data on storm events across the United States, categorized by event types (EVTYPE). Key variables analyzed include:

Population Health: Measured by the number of fatalities and injuries. Economic Consequences: Measured by the monetary estimates of property and crop damage. The analysis involves cleaning and categorizing the event types, aggregating impact data, and identifying the most impactful events in each category.

Show the code
health_eff <- storm_data %>% 
  filter(between(BGN_DATE, as.Date('2001-01-01'), as.Date('2011-12-31'))) %>% 
  summarise(Occurrence = n(), 
            Health_Damage = sum(FATALITIES + INJURIES), 
            Fatalities = sum(FATALITIES),
            Injuries = sum(INJURIES),.by = EVTYPE) %>%
  arrange(desc(Health_Damage))

economic_eff <- storm_data %>% 
  filter(between(BGN_DATE, as.Date('2001-01-01'), as.Date('2011-12-31'))) %>% 
  mutate(PROPDMG = case_when(PROPDMGEXP == 'K' ~ PROPDMG * 1e3,
                             PROPDMGEXP == 'M' ~ PROPDMG * 1e6,
                             PROPDMGEXP == 'B' ~ PROPDMG * 1e9,
                             PROPDMGEXP == '' ~ PROPDMG * 0,
                             PROPDMGEXP == '0' ~ PROPDMG * 0),
         CROPDMG = case_when(CROPDMGEXP == 'K' ~ CROPDMG * 1e3,
                             CROPDMGEXP == 'M' ~ CROPDMG * 1e6,
                             CROPDMGEXP == 'B' ~ CROPDMG * 1e9,
                             CROPDMGEXP == '' ~ CROPDMG * 0)) %>% 
  summarise(Occurrence = n(), 
            Economic_Loss = sum(PROPDMG+CROPDMG), 
            Property_Loss = sum(PROPDMG),
            Crop_Loss = sum(CROPDMG),.by = EVTYPE) %>%
  arrange(desc(Economic_Loss))

Results & Findings

Most Harmful Events to Population Health

The analysis of the top 15 weather events highlights significant variations in their frequency and impact on population health. Tornadoes stand out as the most devastating, causing 15,483 casualties (1,152 fatalities and 14,331 injuries), despite being less frequent than hail or thunderstorm winds. Similarly, excessive heat is a leading cause of fatalities (856) and injuries (3,242), emphasizing the severe impact of heat-related events on vulnerable populations. Lightning, flash floods, and hurricanes/typhoons also contribute substantially to human casualties, with hurricanes/typhoons having a disproportionately high impact relative to their rare occurrence.

Show the code
######################################################
## Top 15 chart with casualities

top15_event <- health_eff %>% top_n(n = 15)

top_casuality <- top15_event %>% select(EVTYPE,Health_Damage) %>% 
reactable(pagination = F, searchable = F, highlight = T, outlined = T,
    compact = T, fullWidth = F, theme = void(), borderless = TRUE,
    columns = list(
      EVTYPE = colDef( width = 160, align = 'right', name = 'Weather Event'),
      Health_Damage = colDef(width = 180, align = 'left',
                             headerStyle = list(color = 'white'),
                             cell = data_bars(dplyr::select(.,Health_Damage), 
                                              text_position = "outside-end",
                                              text_color = "grey1", 
                                              background = "transparent",
                                              bold_text = TRUE, fill_color = "darkblue",
                                              fill_opacity = 0.65, align_bars = "left", 
                                              box_shadow = TRUE, round_edges = TRUE,
                                              number_fmt = scales::label_comma(
                                                accuracy=1)))
      )) %>% 
  add_title(title="Top 15 Weather Event with Casualities in US", 
            align="left", font_color="darkblue", font_size = 18, font_weight = "bold") %>% 
  add_subtitle(subtitle = 'Time Period from Year 2001 - 2011',
               align = 'left', font_color = '#373737', font_size = 14, 
               font_style = 'italic')

###################################################
## Impact of Weather Event

Impact_Event <- health_eff %>% ggplot(aes(Occurrence, Health_Damage, size = Fatalities)) +
  geom_point(shape = 21, color = 'darkblue', fill = 'white') + 
  geom_point(data = top15_event, aes(Occurrence, Health_Damage, size = Fatalities),
             fill = 'chocolate', color = 'white', shape = 21) +
  scale_y_continuous(n.breaks = 8, 
                     labels = scales::label_number(scale_cut =scales::cut_short_scale())) +
  scale_x_continuous(n.breaks = 8, 
                     labels = scales::label_number(scale_cut =scales::cut_short_scale())) +
  theme_minimal() + #coord_cartesian( expand = FALSE) +
  labs(title = 'Impact of Weather Event { Period 2001 - 2011}',
       subtitle = '',
       x = 'Casualities', y = 'Weather Occurrence') +
  ggrepel::geom_text_repel(data = top15_event[1:5,], 
            aes(Occurrence, Health_Damage, label = EVTYPE),
            hjust = -0.2, fontface = 'italic', size = 3 , color = '#373737') +
    theme(panel.grid = element_blank(), 
        plot.title = element_text(hjust = 0.5, face = 'bold.italic', color = 'darkblue'),
        axis.line  = element_line(linetype = 'solid', linewidth = 0.5, color = '#373737'),
        legend.position = 'bottom')

Top 15 Weather Event with Casualities in US

Time Period from Year 2001 - 2011

Less frequent events such as wildfires and floods still result in significant casualties, with wildfires causing 986 casualties and floods contributing 569. On the other hand, more frequent events like hail and thunderstorm winds result in comparatively fewer casualties, indicating that high frequency does not always correlate with greater harm to population health. This underscores the need to prioritize preparation for tornadoes, excessive heat, and infrequent but impactful events like hurricanes and wildfires while maintaining a balanced focus on mitigating risks from all weather events.

Events with the Greatest Economic Consequences

The economic analysis of severe weather events reveals significant disparities in the financial impact of different event types. Floods emerge as the most economically devastating, with total losses exceeding $137 billion, driven largely by property damage. Hurricanes/Typhoons follow closely with $71.9 billion in losses, with a similar emphasis on property damage. Other high-impact events include tornadoes ($19.3 billion) and hail ($13.2 billion), both of which cause widespread destruction to property and crops. Notably, droughts, though infrequent, result in the highest crop losses ($6.7 billion), highlighting their disproportionate impact on agriculture.

Show the code
#########################################################
## Top 15 chart

top15_loss <- economic_eff %>% top_n(n = 15)

top_loss <- top15_loss %>% select(EVTYPE,Economic_Loss) %>% 
reactable(pagination = F, searchable = F, highlight = T, outlined = T,
    compact = T, fullWidth = F, theme = void(), borderless = TRUE,
    columns = list(
      EVTYPE = colDef( width = 170, align = 'right', name = 'Weather Event'),
      Economic_Loss = colDef(width = 230, align = 'left',
                             headerStyle = list(color = 'white'),
                             cell = data_bars(dplyr::select(.,Economic_Loss), 
                                              text_position = "outside-end",
                                              text_color = "grey1", 
                                              background = "transparent",
                                              bold_text = TRUE, fill_color = "darkblue",
                                              fill_opacity = 0.65, align_bars = "left", 
                                              box_shadow = TRUE, round_edges = TRUE,
                                              number_fmt = scales::label_number(
                                                accuracy=0.01, prefix = '$',
                                                scale_cut = scales::cut_short_scale())))
      )) %>% 
  add_title(title="Top 15 Weather Event causing Economic Losses in the US", 
            align="left", font_color="darkblue", font_size = 18, font_weight = "bold") %>% 
  add_subtitle(subtitle = 'Time Period from Year 2001 - 2011',
               align = 'left', font_color = '#373737', font_size = 14, 
               font_style = 'italic')


##########################################################################
## Scatter plot for loss incurred

loss_scatterplot <- 
top15_loss %>% top_n(n = 10) %>% 
  arrange(Economic_Loss) %>% 
  mutate(across(EVTYPE,forcats::as_factor)) %>% 
  tidyr::pivot_longer(cols = c(Property_Loss,Crop_Loss), 
                                   names_to = 'Losses',
                                   values_to = 'Amount') %>% 
  ggplot(aes(x = Amount, y = EVTYPE, fill = Losses)) +
  geom_col(color = 'white', alpha = 0.9, position = 'dodge') + 
  scale_x_continuous(n.breaks = 8, 
                     labels = scales::label_number(prefix = '$',
                                                   scale_cut =scales::cut_short_scale())) +
  scale_fill_manual(values = c('Property_Loss'='#373767', 'Crop_Loss'='orange4')) +
  theme_minimal() + coord_cartesian( expand = FALSE) +
  labs(title = 'Economic Impact of Weather Event by Type { Period 2001 - 2011}',
       subtitle = '',
       x = NULL, y = NULL, fill = 'Loss Type') +
    theme(panel.grid = element_blank(), 
        plot.title = element_text(hjust = 0.5, face = 'bold.italic', color = 'darkblue'),
        axis.line  = element_line(linetype = 'solid', linewidth = 0.5, color = '#373737'),
        legend.position = 'bottom')

Top 15 Weather Event causing Economic Losses in the US

Time Period from Year 2001 - 2011

Show the code
economic_plot <- economic_eff %>% 
  ggplot(aes(Occurrence, Economic_Loss, size = Property_Loss)) +
  geom_point(shape = 21, color = 'darkblue', fill = 'white') + 
  geom_point(data = top15_loss, aes(Occurrence, Economic_Loss, size = Property_Loss),
             fill = 'chocolate', color = 'white', shape = 21) +
  scale_y_continuous(n.breaks = 8, 
                     labels = scales::label_number(prefix = '$',
                                                   scale_cut =scales::cut_short_scale())) +
  scale_x_continuous(n.breaks = 8, 
                     labels = scales::label_number(scale_cut =scales::cut_short_scale())) +
  scale_size_continuous(breaks = c(0,2.5e10,5e10,7.5e10,1e11),
                        labels = scales::label_number(prefix = '$',
                                                scale_cut =scales::cut_short_scale())) +
  theme_minimal() + #coord_cartesian( expand = FALSE) +
  labs(title = 'Economic Impact of Weather Event { Period 2001 - 2011}',
       subtitle = '',
       x = 'Casualities', y = 'Weather Occurrence', size = 'Property Loss') +
  ggrepel::geom_text_repel(data = top15_loss[1:5,], 
            aes(Occurrence, Economic_Loss, label = EVTYPE),
            hjust = -0.2, fontface = 'italic', size = 3 , color = '#373737') +
    theme(panel.grid = element_blank(), 
        plot.title = element_text(hjust = 0.5, face = 'bold.italic', color = 'darkblue'),
        axis.line  = element_line(linetype = 'solid', linewidth = 0.5, color = '#373737'),
        legend.position = 'right')

Frequent events like thunderstorm winds and flash floods contribute moderate economic losses of $3.7 billion and $12.2 billion, respectively, while rarer events like wildfires and tropical storms still generate billions in damage due to their localized intensity. Interestingly, events like frost/freeze and excessive heat, while less prominent in overall losses, still have significant agricultural impacts.

When harmonized with health data, tornadoes, floods, and hurricanes/typhoons emerge as high-priority threats, combining severe impacts on both population health and economic damage. Meanwhile, droughts and hail stand out for their agricultural toll, requiring distinct mitigation strategies. This combined analysis highlights the need to allocate resources based on both human and financial vulnerabilities, prioritizing preparation and response for these multifaceted weather events.

Conclusion

This analysis of severe weather events in the United States highlights the dual impact of these events on population health and the economy. Tornadoes, floods, and hurricanes/typhoons emerge as the most critical threats, combining high casualty rates with significant economic losses. Tornadoes are the leading cause of fatalities and injuries, while floods and hurricanes cause the greatest financial damage, primarily through property destruction. Droughts, although less frequent, have a disproportionate impact on agriculture, resulting in massive crop losses.

The findings emphasize the need for a targeted approach to disaster preparedness and resource allocation. Events like tornadoes and hurricanes demand robust response mechanisms to minimize casualties, while droughts and hail call for strategies to mitigate agricultural losses. By aligning public health efforts with economic resilience measures, municipalities and policymakers can better safeguard communities and reduce the long-term impacts of severe weather events. This comprehensive understanding of the impacts serves as a foundation for evidence-based planning and decision-making in addressing the challenges posed by severe weather.