Top Weather-Related Causes of Injury, Death and Economic Damage

Synposis

This report analyzes data on weather events collected in the U.S. in terms of harm to health or economic factors. The data was collected between January 1950 and November 2011 by the National Oceanic and Atmospheric Administration (NOAA). The database tracks characteristics of major storms and weather events in the U.S., including when and where they occur, as well as estimates of fatalities, injuries, and property damage. The data is available at https://d396qusza40orc.cloudfront.net/repdata%2Fdata%2FStormData.csv.bz2. Documentation for the data is available at https://d396qusza40orc.cloudfront.net/repdata%2Fpeer2_doc%2Fpd01016005curr.pdf. The National Climatic Data Center Storm Events FAQ is available at https://d396qusza40orc.cloudfront.net/repdata%2Fpeer2_doc%2FNCDC%20Storm%20Events-FAQ%20Page.pdf.

Data Processing

The following is a high-level overview of the steps in data processing.

  1. Download the data, if it is not already present
  2. Load the data
  3. Reclassify EVTYPE values
  4. Adjust crop and property damage values
  5. Group and summarize the data
  6. Gather information for top weather events causing fatalities
  7. Gather information for top weather events causing injuries
  8. Gather information for top weather events causing crop damages
  9. Gather information for top weather events causing property damages
library(dplyr)
library(stringr)
options(scipen=999)

Download data

This section sets the working directory, checks to see if the data file is already present, downloads it if it is not found.

setwd(file.path(Sys.getenv("HOME"), "Dropbox/Private/data science/Reproducible Research/project2"))
if(! file.exists("repdata-data-StormData.csv.bz2")) {
  download.file("https://d396qusza40orc.cloudfront.net/repdata%2Fdata%2FStormData.csv.bz2", 
    "repdata-data-StormData.csv.bz2")
}

Load the data

This section loads the data into a variable called repdata. All columns are discarded except those germane to the analysis, which are:

  • EVTYPE: Name of the weather event
  • FATALITIES: Estimate of number of fatalities
  • INJURIES: Estimate of number of injuries
  • PROPDMG: Estimate of property damage
  • PROPDMGEXP: Exponent of property damage value
  • CROPDMG: Estimate of crop damage
  • CROPDMGEXP: Exponent of crop damage value
f <- bzfile("repdata-data-StormData.csv.bz2")
repdata <- read.csv(f)
repdata <- select(repdata, EVTYPE, FATALITIES, INJURIES, PROPDMG, PROPDMGEXP, CROPDMG, CROPDMGEXP)

Reclassify EVTYPE values

The values in the EVTYPE column are fairly messy. For example, there are many different values that contain the word “snow”, and many that contain the word “wind”. If we use all of the values as they are, we will not get an accurate picture of the top causes of health and property damage. So this section reclassifies many of the values. Details on the reclassification are given in Appendix 1.

evt_aggr <- integer()
# This function excludes any values in evt_aggr from set1, and returns set1
# This is to ensure that, when we build an adjusted group of EVTYPE values,
# we do not have any duplicates in the groups.
exclude <- function(set1) {
  result = setdiff(set1, evt_aggr)
  evt_aggr <<- union(evt_aggr, set1)
  #print(paste("curr: ", length(evt_aggr)))
  return (result)
}

repdata$EVTYPE_GRP <- str_trim(repdata$EVTYPE)
evt_groups <- data.frame(group=character(), term1=character(), term2=character(), term3=character(), term4=character(),
  term5=character(), term6=character(), term7=character(), term8=character(), term9=character(), stringsAsFactors=FALSE)
evt_groups[1,] <- c("HEAT (GRP)", "HEAT", "HOT", "WARMTH", "WARM", rep(NA,5))
evt_groups[2,] <- c("TORNADO (GRP)", "TORNADO", "WATERSPOUT", "WAYTERSPOUT", "TORNDAO", "GUSTNADO", rep(NA,4))
evt_groups[3,] <- c("COLD (GRP)", "COLD", "HYPOTHERMIA", "EXPOSURE", "WIND CHILL", "LOW.*TEMP", "UNSEASON.*COOL", rep(NA,3))
evt_groups[4,] <- c("WIND (GRP)", "WIND", rep(NA,8))
evt_groups[5,] <- c("RIP CURRENT (GRP)", "RIP CURRENT", rep(NA,8))
evt_groups[6,] <- c("WINTER (GRP)", "WINTER", "WINTRY", "SNOW", "BLIZZARD", "ICE", "ICY", "FROST", "FREEZE", "FREEZING")
evt_groups[7,] <- c("HURRICANE (GRP)", "HURRICANE", "TYPHOON", rep(NA,7))
evt_groups[8,] <- c("FLOOD (GRP)", "FLOOD", "FLDG", rep(NA,7))
evt_groups[9,] <- c("FIRE (GRP)", "FIRE", rep(NA,8))
evt_groups[10,] <- c("HAIL (GRP)", "HAIL", rep(NA,8))
evt_groups[11,] <- c("TROP. STORM (GRP)", "TROPICAL STORM", rep(NA,8))
evt_groups[12,] <- c("T-STORM (GRP)", "THUNDERSTORM", "TSTM", rep(NA,7))
evt_groups[13,] <- c("LIGHTNING (GRP)", "LIGHTNING","LIGNTNING","LIGHTING", rep(NA,6))
evt_groups[14,] <- c("MUD SLIDE (GRP)", "MUD.*SLIDE", rep(NA,8))
evt_aggr= integer()
evt_groups_data = list()
for(i in 1:nrow(evt_groups)) {
  non_na_cols <- which(!is.na(evt_groups[i,2:10])) + 1
  pattern = paste0("(", paste0(evt_groups[i,non_na_cols], sep=")", collapse="|("))
  x <- grep(pattern, repdata$EVTYPE_GRP, ignore.case=TRUE)
  x <- exclude(x)
  evt_groups_data[[evt_groups[i,]$group]] = x
  repdata[x,]$EVTYPE_GRP <- evt_groups[i,]$group
}

Adjust crop and property damage values

The values of the CROPDMG and PROPDMG fields are raw values that do not represent directly the estimates of crop and property damage. They must be multiplied by the appropriate EXP value, provided in the CROPDMGEXP and ’PROPDMGEXP` fields.

It should be noted that we have incomplete informatoin on the meaning of the EXP values. My methodology is to assume that “k” or “K” means “thousands”, “m” or “M” means “millions”, and “b” or “B” means billions. Other exponents are unknown, so the values in CROPDMG and PROPDMG for these records are ignored. There are a total of 8 records for which CROPDMGEXP has an unrecognized value, and 8 for which PROPDMGEXP has an unrecognized value, of a total of 902297 records.

repdata$CROPDMGFACTOR <- 0
repdata[repdata$CROPDMGEXP %in% c("k","K"),]$CROPDMGFACTOR = 1000
repdata[repdata$CROPDMGEXP %in% c("m","M"),]$CROPDMGFACTOR = 1000000
repdata[repdata$CROPDMGEXP %in% c("b","B"),]$CROPDMGFACTOR = 1000000000
repdata$CROPDMGADJ <- repdata$CROPDMG * repdata$CROPDMGFACTOR

repdata$PROPDMGFACTOR <- 0
repdata[repdata$PROPDMGEXP %in% c("k","K"),]$PROPDMGFACTOR = 1000
repdata[repdata$PROPDMGEXP %in% c("m","M"),]$PROPDMGFACTOR = 1000000
repdata[repdata$PROPDMGEXP %in% c("b","B"),]$PROPDMGFACTOR = 1000000000
repdata$PROPDMGADJ <- repdata$PROPDMG * repdata$PROPDMGFACTOR

Group and summarize the data

The data is now grouped by the derived EVTYPE_GRP field, and then summarized on the sums of CROPDMGADJ, ’PROPDMGADJ,FATALITIESandINJURIES`.

# Group/summarize data 
repdata.summary <- group_by(repdata, EVTYPE_GRP) %>% 
  summarize(FATALITIES=sum(FATALITIES), INJURIES=sum(INJURIES), CROPDMG=sum(CROPDMGADJ), PROPDMG=sum(PROPDMGADJ))
head(repdata.summary)
## Source: local data frame [6 x 5]
## 
##               EVTYPE_GRP FATALITIES INJURIES CROPDMG PROPDMG
## 1                      ?          0        0       0    5000
## 2         ABNORMALLY DRY          0        0       0       0
## 3         ABNORMALLY WET          0        0       0       0
## 4          APACHE COUNTY          0        0       0    5000
## 5 ASTRONOMICAL HIGH TIDE          0        0       0 9425000
## 6  ASTRONOMICAL LOW TIDE          0        0       0  320000

Gather information for top weather events causing fatalities

This section gets a list of the top 20 weather events causing fatalities.

# Calculate top fatalities data
top_fatalities <- head(
  repdata.summary %>%
  filter(FATALITIES > 0) %>%
  arrange(desc(FATALITIES)) %>%
  select(EVTYPE_GRP, FATALITIES)
  , 20)
total_fatalities <- sum(repdata$FATALITIES)
total_fatalities_top_causes <- sum(top_fatalities$FATALITIES)
par(las=2,mar=c(9,4,4,4))

Gather information for top weather events causing injuries

This section gets a list of the top 20 weather events causing injuries.

# Calculate top injuries data
top_injuries <- head(
  repdata.summary %>%
  filter(INJURIES > 0) %>%
  arrange(desc(INJURIES)) %>%
  select(EVTYPE_GRP, INJURIES)
  ,20)
total_injuries <- sum(repdata$INJURIES)
total_injuries_top_causes <- sum(top_injuries$INJURIES)

Gather information for top weather events causing crop damage

This section gets a list of the top 20 weather events causing crop damage.

# Calculate top crop damage data
top_cropdmg <- head(
  repdata.summary %>%
  filter(CROPDMG > 0) %>%
  arrange(desc(CROPDMG)) %>%
  select(EVTYPE_GRP, CROPDMG)
, 20)
total_cropdmg <- sum(repdata.summary$CROPDMG)
total_cropdmg_top_causes <- sum(top_cropdmg$CROPDMG)

Gather information for top weather events causing property damage

This section gets a list of the top 20 weather events causing property damage.

# Calculate top property damage data
top_propdmg <- head(
  repdata.summary %>%
  filter(PROPDMG > 0) %>%
  arrange(desc(PROPDMG)) %>%
  select(EVTYPE_GRP, PROPDMG)
, 20)
total_propdmg <- sum(repdata.summary$PROPDMG)
total_propdmg_top_causes <- sum(top_propdmg$PROPDMG)

Results

We will now consider the results in terms of two basic questions:

  • Which weather events were the most harmful to health?
  • Which weather events were the most harmful in terms of economic damage?

Weather events causing the most fatalities and injuries

The following plot shows the weather events that caused the most fatalities and injuries.

par(las=2,mfrow=c(1,2),mar=c(12,3,3,3))
barplot(top_fatalities$FATALITIES, names.arg=top_fatalities$EVTYPE, cex.names=0.95, main="Top Weather-Related Causes of Fatality")
barplot(top_injuries$INJURIES, names.arg=top_injuries$EVTYPE, cex.names=0.95, main="Top Weather-Related Causes of Injury")
par(las=1)
mtext("Weather events causing the most harm to health", side=3, line=-35, outer=TRUE)

plot of chunk results-health-plot

To see specific numbers for these weather events, see Appendix 2.

Weather events causing the most economic damage

The following plot shows the weather events that caused the most crop and property damage.

par(las=2,mfrow=c(1,2),mar=c(14,7,3,3))
barplot(top_cropdmg$CROPDMG, names.arg=top_cropdmg$EVTYPE, cex.names=0.95, main="Top Weather-Related Causes of Crop Damage")
barplot(top_propdmg$PROPDMG, names.arg=top_propdmg$EVTYPE, cex.names=0.95, main="Top Weather-Related Causes of Property Damage")
par(las=1)
mtext("Weather events causing the most economic damage", side=3, line=-35, outer=TRUE)

plot of chunk results-economic-plot

To see specific numbers for these weather events, see Appendix 2.

Appendix 1: Adjusted/Grouped EVTYPE Values

A rough attempt was made to classify the EVTYPE values in the original data. The EVTYPE field had a total of 985 distinct values. After reclassification, there were 280. The reclassified values accounted for a total of 871387 data points, of a total of 902297.

The first step in reclassification was to trim all EVTYPE values of leading and trailing strings. The second step was to create several groups of EVTYPE values. For instance, one group is “WINTER (GRP)”, which includes many EVTYPE values related to winter weather. If an EVTYPE does not end in “(GRP)”, it was not reclassified.

This process of reclassification is necessarily imperfect. For example, there were entries that contained both “wind” and “snow”, or “wind” and “thunderstorm”. It would have been possible to double-count entries, so that for example, an entry containing both “wind” and “snow” would appear in totals for both “WIND (GRP)” and “WINTER (GRP)”. Or the groups could have been split more finely, such as “WINTER WIND” and “SUMMER WIND”. Instead, my approach was just to chop where I chose. So WIND values were classified first. Those that also contained “SNOW” or “THUNDERSTORM” appeared only in the WIND group.

However, in spite of the imperfections, I think that the state of the data is better than in its raw form.

A list of the groups that contain reclassified values follows, with each original value listed.

for(i in 1:nrow(evt_groups)) {
  print(paste0("The following EVTYPE values were reclassified as ", evt_groups[i,]$group))
  print(sort(unique(repdata[evt_groups_data[[evt_groups[i,]$group]],]$EVTYPE)))
  print("")
}
## [1] "The following EVTYPE values were reclassified as HEAT (GRP)"
##  [1] ABNORMAL WARMTH           DROUGHT/EXCESSIVE HEAT   
##  [3] DRY HOT WEATHER           EXCESSIVE HEAT           
##  [5] EXCESSIVE HEAT/DROUGHT    EXTREME HEAT             
##  [7] HEAT                      HEAT DROUGHT             
##  [9] Heat Wave                 HEAT WAVE                
## [11] HEAT WAVE DROUGHT         HEAT WAVES               
## [13] HEAT/DROUGHT              Heatburst                
## [15] Hot and Dry               HOT PATTERN              
## [17] HOT SPELL                 HOT WEATHER              
## [19] HOT/DRY PATTERN           PROLONG WARMTH           
## [21] Record Heat               RECORD HEAT              
## [23] RECORD HEAT WAVE          RECORD WARM              
## [25] RECORD WARM TEMPS.        Record Warmth            
## [27] RECORD WARMTH             RECORD/EXCESSIVE HEAT    
## [29] UNSEASONABLY HOT          UNSEASONABLY WARM        
## [31] UNSEASONABLY WARM & WET   UNSEASONABLY WARM AND DRY
## [33] UNSEASONABLY WARM YEAR    UNSEASONABLY WARM/WET    
## [35] UNUSUAL WARMTH            UNUSUAL/RECORD WARMTH    
## [37] UNUSUALLY WARM            VERY WARM                
## [39] WARM DRY CONDITIONS       WARM WEATHER             
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as TORNADO (GRP)"
##  [1]  WATERSPOUT                COLD AIR TORNADO          
##  [3] DUST DEVIL WATERSPOUT      GUSTNADO                  
##  [5] GUSTNADO AND               TORNADO                   
##  [7] TORNADO DEBRIS             TORNADO F0                
##  [9] TORNADO F1                 TORNADO F2                
## [11] TORNADO F3                 TORNADO/WATERSPOUT        
## [13] TORNADOES                  TORNADOES, TSTM WIND, HAIL
## [15] TORNADOS                   TORNDAO                   
## [17] WATERSPOUT                 WATERSPOUT FUNNEL CLOUD   
## [19] WATERSPOUT TORNADO         WATERSPOUT-               
## [21] WATERSPOUT-TORNADO         WATERSPOUT/               
## [23] WATERSPOUT/ TORNADO        WATERSPOUT/TORNADO        
## [25] WATERSPOUTS                WAYTERSPOUT               
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as COLD (GRP)"
##  [1] BITTER WIND CHILL              BITTER WIND CHILL TEMPERATURES
##  [3] Cold                           COLD                          
##  [5] COLD AIR FUNNEL                COLD AIR FUNNELS              
##  [7] Cold and Frost                 COLD AND FROST                
##  [9] COLD AND SNOW                  COLD AND WET CONDITIONS       
## [11] Cold Temperature               COLD TEMPERATURES             
## [13] COLD WAVE                      COLD WEATHER                  
## [15] COLD WIND CHILL TEMPERATURES   COLD/WIND CHILL               
## [17] COLD/WINDS                     Excessive Cold                
## [19] Extended Cold                  Extreme Cold                  
## [21] EXTREME COLD                   EXTREME COLD/WIND CHILL       
## [23] EXTREME WIND CHILL             EXTREME WIND CHILL/BLOWING SNO
## [25] EXTREME WIND CHILLS            EXTREME/RECORD COLD           
## [27] FOG AND COLD TEMPERATURES      HIGH WIND/LOW WIND CHILL      
## [29] HIGH WIND/WIND CHILL           HIGH WIND/WIND CHILL/BLIZZARD 
## [31] HIGH WINDS AND WIND CHILL      HIGH WINDS/COLD               
## [33] HYPERTHERMIA/EXPOSURE          HYPOTHERMIA                   
## [35] Hypothermia/Exposure           HYPOTHERMIA/EXPOSURE          
## [37] LOW TEMPERATURE                LOW TEMPERATURE RECORD        
## [39] LOW WIND CHILL                 Prolong Cold                  
## [41] PROLONG COLD                   PROLONG COLD/SNOW             
## [43] RECORD  COLD                   Record Cold                   
## [45] RECORD COLD                    RECORD COLD AND HIGH WIND     
## [47] RECORD COLD/FROST              RECORD SNOW/COLD              
## [49] SEVERE COLD                    SNOW AND COLD                 
## [51] SNOW- HIGH WIND- WIND CHILL    SNOW/ BITTER COLD             
## [53] SNOW/COLD                      SNOW\\COLD                    
## [55] Unseasonable Cold              UNSEASONABLY COLD             
## [57] UNSEASONABLY COOL              UNSEASONABLY COOL & WET       
## [59] UNSEASONAL LOW TEMP            UNUSUALLY COLD                
## [61] WIND CHILL                     WIND CHILL/HIGH WIND          
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as WIND (GRP)"
##   [1]  TSTM WIND                      TSTM WIND (G45)              
##   [3]  WIND                          BLIZZARD AND EXTREME WIND CHIL
##   [5] BLIZZARD/HIGH WIND             BLOWING SNOW & EXTREME WIND CH
##   [7] BLOWING SNOW- EXTREME WIND CHI BLOWING SNOW/EXTREME WIND CHIL
##   [9] DOWNBURST WINDS                DRY MICROBURST WINDS          
##  [11] DRY MIRCOBURST WINDS           DUST STORM/HIGH WINDS         
##  [13] EXTREME WINDCHILL              EXTREME WINDCHILL TEMPERATURES
##  [15] FLASH FLOOD WINDS              FLOOD/RAIN/WIND               
##  [17] FLOOD/RAIN/WINDS               Flood/Strong Wind             
##  [19] gradient wind                  Gradient wind                 
##  [21] GRADIENT WIND                  GRADIENT WINDS                
##  [23] GUSTY LAKE WIND                GUSTY THUNDERSTORM WIND       
##  [25] GUSTY THUNDERSTORM WINDS       Gusty Wind                    
##  [27] GUSTY WIND                     GUSTY WIND/HAIL               
##  [29] GUSTY WIND/HVY RAIN            Gusty wind/rain               
##  [31] Gusty winds                    Gusty Winds                   
##  [33] GUSTY WINDS                    HAIL/WIND                     
##  [35] HAIL/WINDS                     Heavy Rain and Wind           
##  [37] HEAVY RAIN; URBAN FLOOD WINDS; HEAVY RAIN/WIND               
##  [39] HEAVY SNOW AND HIGH WINDS      HEAVY SNOW AND STRONG WINDS   
##  [41] HEAVY SNOW/HIGH WIND           HEAVY SNOW/HIGH WINDS         
##  [43] HEAVY SNOW/HIGH WINDS & FLOOD  HEAVY SNOW/HIGH WINDS/FREEZING
##  [45] HEAVY SNOW/WIND                Heavy surf and wind           
##  [47] HIGH  WINDS                    High Wind                     
##  [49] HIGH WIND                      HIGH WIND (G40)               
##  [51] HIGH WIND 48                   HIGH WIND 63                  
##  [53] HIGH WIND 70                   HIGH WIND AND HEAVY SNOW      
##  [55] HIGH WIND AND HIGH TIDES       HIGH WIND AND SEAS            
##  [57] HIGH WIND DAMAGE               HIGH WIND/ BLIZZARD           
##  [59] HIGH WIND/BLIZZARD             HIGH WIND/BLIZZARD/FREEZING RA
##  [61] HIGH WIND/HEAVY SNOW           HIGH WIND/SEAS                
##  [63] HIGH WINDS                     HIGH WINDS 55                 
##  [65] HIGH WINDS 57                  HIGH WINDS 58                 
##  [67] HIGH WINDS 63                  HIGH WINDS 66                 
##  [69] HIGH WINDS 67                  HIGH WINDS 73                 
##  [71] HIGH WINDS 76                  HIGH WINDS 80                 
##  [73] HIGH WINDS 82                  HIGH WINDS DUST STORM         
##  [75] HIGH WINDS HEAVY RAINS         HIGH WINDS/                   
##  [77] HIGH WINDS/COASTAL FLOOD       HIGH WINDS/FLOODING           
##  [79] HIGH WINDS/HEAVY RAIN          HIGH WINDS/SNOW               
##  [81] HURRICANE OPAL/HIGH WINDS      ICE/STRONG WINDS              
##  [83] LIGHTNING AND WINDS            LIGHTNING THUNDERSTORM WINDS  
##  [85] LIGHTNING THUNDERSTORM WINDSS  MARINE HIGH WIND              
##  [87] MARINE STRONG WIND             MARINE THUNDERSTORM WIND      
##  [89] MARINE TSTM WIND               MICROBURST WINDS              
##  [91] NON TSTM WIND                  NON-SEVERE WIND DAMAGE        
##  [93] NON-TSTM WIND                  RAIN AND WIND                 
##  [95] RAIN/WIND                      SEVERE THUNDERSTORM WINDS     
##  [97] SNOW AND WIND                  SNOW/HIGH WINDS               
##  [99] STORM FORCE WINDS              Strong Wind                   
## [101] STRONG WIND                    STRONG WIND GUST              
## [103] Strong winds                   Strong Winds                  
## [105] STRONG WINDS                   THUDERSTORM WINDS             
## [107] THUNDEERSTORM WINDS            THUNDERESTORM WINDS           
## [109] THUNDERSTORM  WINDS            Thunderstorm Wind             
## [111] THUNDERSTORM WIND              THUNDERSTORM WIND (G40)       
## [113] THUNDERSTORM WIND 50           THUNDERSTORM WIND 52          
## [115] THUNDERSTORM WIND 56           THUNDERSTORM WIND 59          
## [117] THUNDERSTORM WIND 59 MPH       THUNDERSTORM WIND 59 MPH.     
## [119] THUNDERSTORM WIND 60 MPH       THUNDERSTORM WIND 65 MPH      
## [121] THUNDERSTORM WIND 65MPH        THUNDERSTORM WIND 69          
## [123] THUNDERSTORM WIND 98 MPH       THUNDERSTORM WIND G50         
## [125] THUNDERSTORM WIND G51          THUNDERSTORM WIND G52         
## [127] THUNDERSTORM WIND G55          THUNDERSTORM WIND G60         
## [129] THUNDERSTORM WIND G61          THUNDERSTORM WIND TREES       
## [131] THUNDERSTORM WIND.             THUNDERSTORM WIND/ TREE       
## [133] THUNDERSTORM WIND/ TREES       THUNDERSTORM WIND/AWNING      
## [135] THUNDERSTORM WIND/HAIL         THUNDERSTORM WIND/LIGHTNING   
## [137] THUNDERSTORM WINDS             THUNDERSTORM WINDS      LE CEN
## [139] THUNDERSTORM WINDS 13          THUNDERSTORM WINDS 2          
## [141] THUNDERSTORM WINDS 50          THUNDERSTORM WINDS 52         
## [143] THUNDERSTORM WINDS 53          THUNDERSTORM WINDS 60         
## [145] THUNDERSTORM WINDS 61          THUNDERSTORM WINDS 62         
## [147] THUNDERSTORM WINDS 63 MPH      THUNDERSTORM WINDS AND        
## [149] THUNDERSTORM WINDS FUNNEL CLOU THUNDERSTORM WINDS G          
## [151] THUNDERSTORM WINDS G60         THUNDERSTORM WINDS HAIL       
## [153] THUNDERSTORM WINDS HEAVY RAIN  THUNDERSTORM WINDS LIGHTNING  
## [155] THUNDERSTORM WINDS SMALL STREA THUNDERSTORM WINDS URBAN FLOOD
## [157] THUNDERSTORM WINDS.            THUNDERSTORM WINDS/ FLOOD     
## [159] THUNDERSTORM WINDS/ HAIL       THUNDERSTORM WINDS/FLASH FLOOD
## [161] THUNDERSTORM WINDS/FLOODING    THUNDERSTORM WINDS/FUNNEL CLOU
## [163] THUNDERSTORM WINDS/HAIL        THUNDERSTORM WINDS/HEAVY RAIN 
## [165] THUNDERSTORM WINDS53           THUNDERSTORM WINDSHAIL        
## [167] THUNDERSTORM WINDSS            THUNDERSTORMS WIND            
## [169] THUNDERSTORMS WINDS            THUNDERSTORMW WINDS           
## [171] THUNDERSTORMWINDS              THUNDERSTROM WIND             
## [173] THUNDERSTROM WINDS             THUNDERTORM WINDS             
## [175] THUNDERTSORM WIND              THUNDESTORM WINDS             
## [177] THUNERSTORM WINDS              Tstm Wind                     
## [179] TSTM WIND                      TSTM WIND  (G45)              
## [181] TSTM WIND (41)                 TSTM WIND (G35)               
## [183] TSTM WIND (G40)                TSTM WIND (G45)               
## [185] TSTM WIND 40                   TSTM WIND 45                  
## [187] TSTM WIND 50                   TSTM WIND 51                  
## [189] TSTM WIND 52                   TSTM WIND 55                  
## [191] TSTM WIND 65)                  TSTM WIND AND LIGHTNING       
## [193] TSTM WIND DAMAGE               TSTM WIND G45                 
## [195] TSTM WIND G58                  TSTM WIND/HAIL                
## [197] TSTM WINDS                     TUNDERSTORM WIND              
## [199] WAKE LOW WIND                  Whirlwind                     
## [201] WHIRLWIND                      Wind                          
## [203] WIND                           WIND ADVISORY                 
## [205] WIND AND WAVE                  Wind Damage                   
## [207] WIND DAMAGE                    WIND GUSTS                    
## [209] WIND STORM                     WIND/HAIL                     
## [211] WINDS                          WINTER STORM HIGH WINDS       
## [213] WINTER STORM/HIGH WIND         WINTER STORM/HIGH WINDS       
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as RIP CURRENT (GRP)"
## [1] RIP CURRENT             RIP CURRENTS            RIP CURRENTS HEAVY SURF
## [4] RIP CURRENTS/HEAVY SURF
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as WINTER (GRP)"
##   [1] ACCUMULATED SNOWFALL          AGRICULTURAL FREEZE          
##   [3] Black Ice                     BLACK ICE                    
##   [5] BLIZZARD                      BLIZZARD AND HEAVY SNOW      
##   [7] Blizzard Summary              BLIZZARD WEATHER             
##   [9] BLIZZARD/FREEZING RAIN        BLIZZARD/HEAVY SNOW          
##  [11] BLIZZARD/WINTER STORM         blowing snow                 
##  [13] Blowing Snow                  BLOWING SNOW                 
##  [15] Damaging Freeze               DAMAGING FREEZE              
##  [17] Drifting Snow                 EARLY FREEZE                 
##  [19] Early Frost                   EARLY FROST                  
##  [21] EARLY SNOW                    Early snowfall               
##  [23] EARLY SNOWFALL                EXCESSIVE SNOW               
##  [25] FALLING SNOW/ICE              FIRST FROST                  
##  [27] FIRST SNOW                    FLASH FLOOD FROM ICE JAMS    
##  [29] Freeze                        FREEZE                       
##  [31] Freezing drizzle              Freezing Drizzle             
##  [33] FREEZING DRIZZLE              FREEZING DRIZZLE AND FREEZING
##  [35] Freezing Fog                  FREEZING FOG                 
##  [37] Freezing rain                 Freezing Rain                
##  [39] FREEZING RAIN                 FREEZING RAIN AND SLEET      
##  [41] FREEZING RAIN AND SNOW        FREEZING RAIN SLEET AND      
##  [43] FREEZING RAIN SLEET AND LIGHT FREEZING RAIN/SLEET          
##  [45] FREEZING RAIN/SNOW            Freezing Spray               
##  [47] Frost                         FROST                        
##  [49] Frost/Freeze                  FROST/FREEZE                 
##  [51] FROST\\FREEZE                 GLAZE ICE                    
##  [53] GLAZE/ICE STORM               GROUND BLIZZARD              
##  [55] HAIL/ICY ROADS                HARD FREEZE                  
##  [57] HEAVY LAKE SNOW               HEAVY RAIN/SNOW              
##  [59] HEAVY SNOW                    HEAVY SNOW   FREEZING RAIN   
##  [61] HEAVY SNOW & ICE              HEAVY SNOW AND               
##  [63] HEAVY SNOW AND ICE            HEAVY SNOW AND ICE STORM     
##  [65] HEAVY SNOW ANDBLOWING SNOW    Heavy snow shower            
##  [67] HEAVY SNOW SQUALLS            HEAVY SNOW-SQUALLS           
##  [69] HEAVY SNOW/BLIZZARD           HEAVY SNOW/BLIZZARD/AVALANCHE
##  [71] HEAVY SNOW/BLOWING SNOW       HEAVY SNOW/FREEZING RAIN     
##  [73] HEAVY SNOW/HIGH               HEAVY SNOW/ICE               
##  [75] HEAVY SNOW/ICE STORM          HEAVY SNOW/SLEET             
##  [77] HEAVY SNOW/SQUALLS            HEAVY SNOW/WINTER STORM      
##  [79] HEAVY SNOWPACK                HEAVY WET SNOW               
##  [81] ICE                           ICE AND SNOW                 
##  [83] ICE FLOES                     Ice Fog                      
##  [85] ICE JAM                       Ice jam flood (minor         
##  [87] ICE JAM FLOODING              ICE ON ROAD                  
##  [89] ICE PELLETS                   ICE ROADS                    
##  [91] ICE STORM                     ICE STORM AND SNOW           
##  [93] ICE STORM/FLASH FLOOD         Ice/Snow                     
##  [95] ICE/SNOW                      Icestorm/Blizzard            
##  [97] Icy Roads                     ICY ROADS                    
##  [99] LACK OF SNOW                  Lake Effect Snow             
## [101] LAKE EFFECT SNOW              LAKE-EFFECT SNOW             
## [103] LATE FREEZE                   LATE SEASON SNOW             
## [105] Late Season Snowfall          LATE SNOW                    
## [107] Late-season Snowfall          LIGHT FREEZING RAIN          
## [109] Light snow                    Light Snow                   
## [111] LIGHT SNOW                    LIGHT SNOW AND SLEET         
## [113] Light Snow/Flurries           LIGHT SNOW/FREEZING PRECIP   
## [115] Light Snowfall                MODERATE SNOW                
## [117] MODERATE SNOWFALL             Monthly Snowfall             
## [119] MONTHLY SNOWFALL              Mountain Snows               
## [121] NEAR RECORD SNOW              PATCHY ICE                   
## [123] RAIN/SNOW                     Record May Snow              
## [125] RECORD SNOW                   RECORD SNOWFALL              
## [127] Record Winter Snow            Seasonal Snowfall            
## [129] SLEET & FREEZING RAIN         SLEET/FREEZING RAIN          
## [131] SLEET/ICE STORM               SLEET/RAIN/SNOW              
## [133] SLEET/SNOW                    Snow                         
## [135] SNOW                          Snow Accumulation            
## [137] SNOW ACCUMULATION             SNOW ADVISORY                
## [139] SNOW AND HEAVY SNOW           Snow and Ice                 
## [141] SNOW AND ICE                  SNOW AND ICE STORM           
## [143] Snow and sleet                SNOW AND SLEET               
## [145] SNOW DROUGHT                  SNOW FREEZING RAIN           
## [147] SNOW SHOWERS                  SNOW SLEET                   
## [149] SNOW SQUALL                   Snow squalls                 
## [151] Snow Squalls                  SNOW SQUALLS                 
## [153] SNOW/ ICE                     SNOW/BLOWING SNOW            
## [155] SNOW/FREEZING RAIN            SNOW/HEAVY SNOW              
## [157] SNOW/ICE                      SNOW/ICE STORM               
## [159] SNOW/RAIN                     SNOW/RAIN/SLEET              
## [161] SNOW/SLEET                    SNOW/SLEET/FREEZING RAIN     
## [163] SNOW/SLEET/RAIN               SNOWFALL RECORD              
## [165] SNOWMELT FLOODING             SNOWSTORM                    
## [167] THUNDERSNOW                   Thundersnow shower           
## [169] UNUSUALLY LATE SNOW           WET SNOW                     
## [171] WINTER MIX                    WINTER STORM                 
## [173] WINTER STORMS                 Winter Weather               
## [175] WINTER WEATHER                WINTER WEATHER MIX           
## [177] WINTER WEATHER/MIX            WINTERY MIX                  
## [179] Wintry mix                    Wintry Mix                   
## [181] WINTRY MIX                   
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as HURRICANE (GRP)"
##  [1] HURRICANE                  Hurricane Edouard         
##  [3] HURRICANE EMILY            HURRICANE ERIN            
##  [5] HURRICANE FELIX            HURRICANE GORDON          
##  [7] HURRICANE OPAL             HURRICANE-GENERATED SWELLS
##  [9] HURRICANE/TYPHOON          TYPHOON                   
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as FLOOD (GRP)"
##  [1]  COASTAL FLOOD                  FLASH FLOOD                  
##  [3] BEACH EROSION/COASTAL FLOOD    BEACH FLOOD                   
##  [5] BREAKUP FLOODING               COASTAL  FLOODING/EROSION     
##  [7] Coastal Flood                  COASTAL FLOOD                 
##  [9] coastal flooding               Coastal Flooding              
## [11] COASTAL FLOODING               COASTAL FLOODING/EROSION      
## [13] COASTAL/TIDAL FLOOD            COASTALFLOOD                  
## [15] CSTL FLOODING/EROSION          Erosion/Cstl Flood            
## [17] FLASH FLOOD                    FLASH FLOOD - HEAVY RAIN      
## [19] FLASH FLOOD LANDSLIDES         FLASH FLOOD/                  
## [21] FLASH FLOOD/ FLOOD             FLASH FLOOD/ STREET           
## [23] FLASH FLOOD/FLOOD              FLASH FLOOD/HEAVY RAIN        
## [25] FLASH FLOOD/LANDSLIDE          FLASH FLOODING                
## [27] FLASH FLOODING/FLOOD           FLASH FLOODING/THUNDERSTORM WI
## [29] FLASH FLOODS                   Flood                         
## [31] FLOOD                          FLOOD & HEAVY RAIN            
## [33] FLOOD FLASH                    FLOOD FLOOD/FLASH             
## [35] FLOOD WATCH/                   FLOOD/FLASH                   
## [37] Flood/Flash Flood              FLOOD/FLASH FLOOD             
## [39] FLOOD/FLASH FLOODING           FLOOD/FLASH/FLOOD             
## [41] FLOOD/FLASHFLOOD               FLOOD/RIVER FLOOD             
## [43] FLOODING                       FLOODING/HEAVY RAIN           
## [45] FLOODS                         HAIL FLOODING                 
## [47] HEAVY RAIN AND FLOOD           HEAVY RAIN/FLOODING           
## [49] HEAVY RAIN/MUDSLIDES/FLOOD     HEAVY RAIN/URBAN FLOOD        
## [51] HEAVY RAINS/FLOODING           HEAVY SURF COASTAL FLOODING   
## [53] HIGHWAY FLOODING               LAKE FLOOD                    
## [55] LAKESHORE FLOOD                LANDSLIDE/URBAN FLOOD         
## [57] LOCAL FLASH FLOOD              LOCAL FLOOD                   
## [59] MAJOR FLOOD                    MINOR FLOOD                   
## [61] Minor Flooding                 MINOR FLOODING                
## [63] MUD SLIDES URBAN FLOODING      RIVER AND STREAM FLOOD        
## [65] RIVER FLOOD                    River Flooding                
## [67] RIVER FLOODING                 RURAL FLOOD                   
## [69] SMALL STREAM AND URBAN FLOOD   SMALL STREAM AND URBAN FLOODIN
## [71] SMALL STREAM FLOOD             SMALL STREAM FLOODING         
## [73] SMALL STREAM URBAN FLOOD       SMALL STREAM/URBAN FLOOD      
## [75] STREAM FLOODING                STREET FLOOD                  
## [77] STREET FLOODING                TIDAL FLOOD                   
## [79] Tidal Flooding                 TIDAL FLOODING                
## [81] URBAN AND SMALL STREAM FLOOD   URBAN AND SMALL STREAM FLOODIN
## [83] Urban flood                    Urban Flood                   
## [85] URBAN FLOOD                    URBAN FLOOD LANDSLIDE         
## [87] Urban Flooding                 URBAN FLOODING                
## [89] URBAN FLOODS                   URBAN SMALL STREAM FLOOD      
## [91] URBAN/SMALL FLOODING           URBAN/SMALL STREAM  FLOOD     
## [93] URBAN/SMALL STREAM FLOOD       URBAN/SMALL STREAM FLOODING   
## [95] URBAN/SMALL STRM FLDG          URBAN/SML STREAM FLDG         
## [97] URBAN/STREET FLOODING         
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as FIRE (GRP)"
##  [1] BRUSH FIRE        BRUSH FIRES       FOREST FIRES     
##  [4] GRASS FIRES       LIGHTNING FIRE    RED FLAG FIRE WX 
##  [7] WILD FIRES        WILD/FOREST FIRE  WILD/FOREST FIRES
## [10] WILDFIRE          WILDFIRES        
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as HAIL (GRP)"
##  [1] DEEP HAIL         FUNNEL CLOUD/HAIL HAIL             
##  [4] HAIL 0.75         HAIL 0.88         HAIL 075         
##  [7] HAIL 088          HAIL 1.00         HAIL 1.75        
## [10] HAIL 1.75)        HAIL 100          HAIL 125         
## [13] HAIL 150          HAIL 175          HAIL 200         
## [16] HAIL 225          HAIL 275          HAIL 450         
## [19] HAIL 75           HAIL 80           HAIL 88          
## [22] HAIL ALOFT        HAIL DAMAGE       HAIL STORM       
## [25] Hail(0.75)        HAILSTORM         HAILSTORMS       
## [28] LATE SEASON HAIL  MARINE HAIL       NON SEVERE HAIL  
## [31] small hail        Small Hail        SMALL HAIL       
## [34] THUNDERSTORM HAIL
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as TROP. STORM (GRP)"
## [1] TROPICAL STORM         TROPICAL STORM ALBERTO TROPICAL STORM DEAN   
## [4] TROPICAL STORM GORDON  TROPICAL STORM JERRY  
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as T-STORM (GRP)"
##  [1] LIGHTNING AND THUNDERSTORM WIN SEVERE THUNDERSTORM           
##  [3] SEVERE THUNDERSTORMS           THUNDERSTORM                  
##  [5] THUNDERSTORM DAMAGE            THUNDERSTORM DAMAGE TO        
##  [7] THUNDERSTORM W INDS            THUNDERSTORM WINS             
##  [9] THUNDERSTORMS                  THUNDERSTORMW                 
## [11] THUNDERSTORMW 50               TSTM                          
## [13] TSTM HEAVY RAIN                TSTM WND                      
## [15] TSTMW                         
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as LIGHTNING (GRP)"
##  [1]  LIGHTNING               HEAVY RAIN/LIGHTNING    
##  [3] LIGHTING                 LIGHTNING               
##  [5] LIGHTNING  WAUSEON       LIGHTNING AND HEAVY RAIN
##  [7] LIGHTNING DAMAGE         LIGHTNING INJURY        
##  [9] LIGHTNING.               LIGHTNING/HEAVY RAIN    
## [11] LIGNTNING               
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""
## [1] "The following EVTYPE values were reclassified as MUD SLIDE (GRP)"
## [1] MUD SLIDE          MUD SLIDES         MUD/ROCK SLIDE    
## [4] Mudslide           MUDSLIDE           MUDSLIDE/LANDSLIDE
## [7] Mudslides          MUDSLIDES         
## 985 Levels:    HIGH SURF ADVISORY  COASTAL FLOOD ... WND
## [1] ""

Appendix 2: Data for Top Causes of Fatalities, Injuries and Economic Damage

A total of 15,145 fatalities was recorded. Of those, 15,012 were due to the top 20 causes. The following the are top 20 weather-related causes of fatalities in descending order.

top_fatalities
## Source: local data frame [20 x 2]
## 
##              EVTYPE_GRP FATALITIES
## 1         TORNADO (GRP)       5664
## 2            HEAT (GRP)       3178
## 3           FLOOD (GRP)       1525
## 4            WIND (GRP)       1205
## 5       LIGHTNING (GRP)        817
## 6          WINTER (GRP)        642
## 7     RIP CURRENT (GRP)        577
## 8            COLD (GRP)        467
## 9             AVALANCHE        224
## 10      HURRICANE (GRP)        133
## 11            HIGH SURF        101
## 12           HEAVY RAIN         98
## 13           FIRE (GRP)         90
## 14    TROP. STORM (GRP)         66
## 15                  FOG         62
## 16 HEAVY SURF/HIGH SURF         42
## 17            LANDSLIDE         38
## 18              TSUNAMI         33
## 19 URBAN/SML STREAM FLD         28
## 20           DUST STORM         22

A total of 140,528 injuries was recorded. Of those, 140,055 were due to the top 20 causes. The following are the top 20 weather-related causes of injuries in descending order.

top_injuries
## Source: local data frame [20 x 2]
## 
##           EVTYPE_GRP INJURIES
## 1      TORNADO (GRP)    91436
## 2         WIND (GRP)    11458
## 3         HEAT (GRP)     9243
## 4        FLOOD (GRP)     8602
## 5       WINTER (GRP)     6107
## 6    LIGHTNING (GRP)     5231
## 7         FIRE (GRP)     1608
## 8         HAIL (GRP)     1371
## 9    HURRICANE (GRP)     1333
## 10               FOG      734
## 11 RIP CURRENT (GRP)      529
## 12        DUST STORM      440
## 13 TROP. STORM (GRP)      383
## 14         DENSE FOG      342
## 15        COLD (GRP)      320
## 16        HEAVY RAIN      251
## 17             GLAZE      216
## 18         AVALANCHE      170
## 19         HIGH SURF      152
## 20           TSUNAMI      129

A total of 49,104,191,910 in crop damages was recorded. Of those, 49,096,914,510 were due to the top 20 causes. The following are the top 20 weather-releated causes of crop damage in descending order.

top_cropdmg
## Source: local data frame [20 x 2]
## 
##              EVTYPE_GRP     CROPDMG
## 1               DROUGHT 13972566000
## 2           FLOOD (GRP) 12262259100
## 3          WINTER (GRP)  7313342400
## 4       HURRICANE (GRP)  5506117800
## 5            HAIL (GRP)  3046887450
## 6            WIND (GRP)  2149154450
## 7            COLD (GRP)  1416765500
## 8            HEAT (GRP)   904479280
## 9            HEAVY RAIN   733399800
## 10    TROP. STORM (GRP)   694896000
## 11        TORNADO (GRP)   417462910
## 12           FIRE (GRP)   403281630
## 13    EXCESSIVE WETNESS   142000000
## 14          HEAVY RAINS    60500000
## 15            LANDSLIDE    20017000
## 16        T-STORM (GRP)    18205000
## 17      LIGHTNING (GRP)    12092090
## 18      UNSEASONAL RAIN    10000000
## 19 URBAN/SML STREAM FLD     8488100
## 20         COOL AND WET     5000000

A total of 427,318,642,100 in property damages was recorded. Of those, 427,192,630,970 were due to the top 20 causes. The following are the top 20 weather-releated causes of property damage in descending order.

top_propdmg
## Source: local data frame [20 x 2]
## 
##                   EVTYPE_GRP      PROPDMG
## 1                FLOOD (GRP) 167512398320
## 2            HURRICANE (GRP)  85256410010
## 3              TORNADO (GRP)  58602764980
## 4                STORM SURGE  43323536000
## 5                 WIND (GRP)  16021386470
## 6                 HAIL (GRP)  15974047720
## 7               WINTER (GRP)  12399158450
## 8                 FIRE (GRP)   8501628500
## 9          TROP. STORM (GRP)   7714390550
## 10          STORM SURGE/TIDE   4641188000
## 11 HEAVY RAIN/SEVERE WEATHER   2500000000
## 12             T-STORM (GRP)   1208463550
## 13                   DROUGHT   1046106000
## 14           LIGHTNING (GRP)    933732280
## 15                HEAVY RAIN    694248090
## 16                 LANDSLIDE    324596000
## 17                COLD (GRP)    246629400
## 18                   TSUNAMI    144062000
## 19                 HIGH SURF     89575000
## 20      URBAN/SML STREAM FLD     58309650