This analysis explores the U.S. National Oceanic and Atmospheric Administration’s (NOAA) storm database to identify severe weather events impacting public health and the economy. The data, spanning from 1950 to November 2011, includes events recorded across the United States. Key variables analyzed include event types, fatalities, injuries, and economic damages to property and crops. The analysis aims to determine which event types are most harmful to population health and have the greatest economic consequences. Using R for data processing and visualization, the analysis highlights the most significant weather events in terms of human impact and economic loss. Findings from this study can aid in resource prioritization and emergency preparedness for severe weather events.
# Loading required libraries
library(readr)
library(dplyr)
library(ggplot2)
# Reading the compressed CSV data into R
storm_data <- read_csv("repdata-data-StormData.csv.bz2")
# Processing the data
storm_data <- storm_data %>%
mutate(EVTYPE = as.factor(EVTYPE),
PROPDMGEXP = as.factor(PROPDMGEXP),
CROPDMGEXP = as.factor(CROPDMGEXP))
# Summarizing fatalities and injuries by event type
health_impact <- storm_data %>%
group_by(EVTYPE) %>%
summarise(Total_Fatalities = sum(FATALITIES),
Total_Injuries = sum(INJURIES)) %>%
mutate(Total_Impact = Total_Fatalities + Total_Injuries) %>%
arrange(desc(Total_Impact))
# Visualizing the top 10 most harmful events for population health
ggplot(head(health_impact, 10), aes(x = reorder(EVTYPE, Total_Impact), y = Total_Impact)) +
geom_bar(stat = "identity", fill = "steelblue") +
coord_flip() +
labs(title = "Top 10 Weather Events Impacting Population Health",
x = "Event Type",
y = "Total Impact (Fatalities + Injuries)")
# Summarizing property and crop damage by event type
economic_impact <- storm_data %>%
group_by(EVTYPE) %>%
summarise(Total_Prop_Dmg = sum(PROPDMG * 10^(as.numeric(PROPDMGEXP))),
Total_Crop_Dmg = sum(CROPDMG * 10^(as.numeric(CROPDMGEXP)))) %>%
mutate(Total_Economic_Dmg = Total_Prop_Dmg + Total_Crop_Dmg) %>%
arrange(desc(Total_Economic_Dmg))
# Visualizing the top 10 events with greatest economic consequences
ggplot(head(economic_impact, 10), aes(x = reorder(EVTYPE, Total_Economic_Dmg), y = Total_Economic_Dmg)) +
geom_bar(stat = "identity", fill = "tomato") +
coord_flip() +
labs(title = "Top 10 Weather Events with Greatest Economic Consequences",
x = "Event Type",
y = "Total Economic Damage")