Title: “Events most harmful to economy and population”
Synopsis
NOAA Storm Database The following analysis details from across the United States, types of events most harmful with respect to population health & the economy. The final results are determined through the creation of Barplots detailing the Top 10 events of each category. Due to undefined exponents, a number of statistics have been omitted from results.

Data Processing

Data Processing consist of the usage of the U.S. National Oceanic and Atmospheric Administration’s (NOAA) storm database. The document can be found here: https://d396qusza40orc.cloudfront.net/repdata%2Fdata%2FStormData.csv.bz2. After the loading of the data, Data was divided into 2 groups (Fatalities/Injuries) Having split the data into 2 seperate groups, data was updated to combine each group into actionable events. Having defined the top 10 events, the data was aggregated to determine the totals for each event. Having defined the totals of the top 10 event, the data was then plotted as a Barplot

Please find below the code associated to both questions: Quesion 1

if(!file.exists("./StormData.csv.bz2")) {
  url<-"https://d396qusza40orc.cloudfront.net/repdata%2Fdata%2FStormData.csv.bz2"
  download.file(url, destfile="./StormData.csv.bz2", method="curl")  
  }
storm <- read.csv(bzfile("StormData.csv.bz2"), header=TRUE, stringsAsFactors=FALSE)
removed.event.storm.fatalities <- subset(storm, FATALITIES > 0)
removed.event.storm.injuries <- subset(storm, INJURIES > 0)
removed.event.storm.fatalities$EVTYPE<- toupper(removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("AVALANCE","AVALANCHE",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLASH FLOOD/FLOOD","FLASH FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLASH FLOOD/FLOOD","FLASH FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLASH FLOODING","FLASH FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLASH FLOODING/FLOOD","FLASH FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLASH FLOODS","FLASH FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLOOD & HEAVY RAIN","FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLOOD/FLASH FLOOD","FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLOOD/RIVER FLOOD","FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("FLOODING","FLOOD",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("HIGH WIND AND SEAS","HIGH WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("HIGH WIND/SEAS","HIGH WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("HIGH WINDS","HIGH WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("HIGH WIND/SEAS","HIGH WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("HIGH WIND/SNOW","HIGH WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("LIGHTNING.","LIGHTNING",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("RIP CURRENTS","RIP CURRENT",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("RIP CURRENTS/HEAVY SURF","RIP CURRENT",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("RIP CURRENT/HEAVY SURF","RIP CURRENT",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("TSTM WIND (G35)","TSTM WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("TSTM WIND/HAIL)","TSTM WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("THUNDERSTORM WIND (G40)","TSTM WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("THUNDERSTORM WIND G52","TSTM WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("THUNDERSTORM WINDS","TSTM WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.fatalities$EVTYPE <- gsub("THUNDERTORM WINDS","TSTM WIND",removed.event.storm.fatalities$EVTYPE)
removed.event.storm.injuries$EVTYPE<- toupper(removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("AVALANCE","AVALANCHE",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLASH FLOOD/FLOOD","FLASH FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLASH FLOOD/FLOOD","FLASH FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLASH FLOODING","FLASH FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLASH FLOODING/FLOOD","FLASH FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLASH FLOODS","FLASH FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLOOD & HEAVY RAIN","FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLOOD/FLASH FLOOD","FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLOOD/RIVER FLOOD","FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("FLOODING","FLOOD",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("HIGH WIND AND SEAS","HIGH WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("HIGH WIND/SEAS","HIGH WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("HIGH WINDS","HIGH WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("HIGH WIND/SEAS","HIGH WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("HIGH WIND/SNOW","HIGH WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("LIGHTNING.","LIGHTNING",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("RIP CURRENTS","RIP CURRENT",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("RIP CURRENTS/HEAVY SURF","RIP CURRENT",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("RIP CURRENT/HEAVY SURF","RIP CURRENT",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("TSTM WIND (G35)","TSTM WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("TSTM WIND/HAIL)","TSTM WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("THUNDERSTORM WIND (G40)","TSTM WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("THUNDERSTORM WIND G52","TSTM WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("THUNDERSTORM WINDS","TSTM WIND",removed.event.storm.injuries$EVTYPE)
removed.event.storm.injuries$EVTYPE <- gsub("THUNDERTORM WINDS","TSTM WIND",removed.event.storm.injuries$EVTYPE)
subset.fatalities <- aggregate(FATALITIES~EVTYPE, data = removed.event.storm.fatalities, FUN=sum)
sort.subset.fatalities <- subset.fatalities[order(subset.fatalities$FATALITIES),c(1,2)]
final.fatalities <- tail(sort.subset.fatalities,10)
final.fatalities
##             EVTYPE FATALITIES
## 1        AVALANCHE        225
## 60       HIGH WIND        293
## 31           FLOOD        495
## 117      TSTM WIND        570
## 95     RIP CURRENT        577
## 77       LIGHTNING        817
## 44            HEAT        937
## 29     FLASH FLOOD       1013
## 21  EXCESSIVE HEAT       1903
## 113        TORNADO       5633
barplot(final.fatalities$FATALITIES,names.arg=final.fatalities$EVTYPE,cex.names=0.5,col=c("red","yellow","light blue","green","orange","black","pink","purple","grey","brown"), main="TOP 10 Events by Fatalities")

plot of chunk unnamed-chunk-2

subset.injuries <- aggregate(INJURIES~EVTYPE, data = removed.event.storm.injuries, FUN=sum)
sort.subset.injuries <- subset.injuries[order(subset.injuries$INJURIES),c(1,2)]
final.injuries <- tail(sort.subset.injuries,10)
final.injuries
##                EVTYPE INJURIES
## 53          HIGH WIND     1465
## 105 THUNDERSTORM WIND     1488
## 25        FLASH FLOOD     1785
## 66          ICE STORM     1975
## 39               HEAT     2100
## 72          LIGHTNING     5230
## 17     EXCESSIVE HEAT     6525
## 26              FLOOD     6806
## 115         TSTM WIND     7865
## 109           TORNADO    91346
barplot(final.injuries$INJURIES,names.arg=final.injuries$EVTYPE,cex.names=0.5,col=c("red","yellow","light blue","green","orange","black","pink","purple","grey","brown"), main="TOP 10 Events by Injuries")

plot of chunk unnamed-chunk-3

Question 2

removed.event.storm.crop <- subset(storm, CROPDMG > 0)
removed.event.storm.property <- subset(storm, PROPDMG > 0)
updated.storm.property <- subset(removed.event.storm.property, select=c("EVTYPE","PROPDMG","PROPDMGEXP"))
updated.storm.crop <- subset(removed.event.storm.crop, select=c("EVTYPE","CROPDMG","CROPDMGEXP"))
updated.storm.crop$CROPDMGEXP <- gsub("B","1000000000",updated.storm.crop$CROPDMGEXP)
updated.storm.crop$CROPDMGEXP <- gsub("M","1000000",updated.storm.crop$CROPDMGEXP)
updated.storm.crop$CROPDMGEXP <- gsub("K","1000",updated.storm.crop$CROPDMGEXP)
updated.storm.crop$CROPDMGEXP <- as.numeric(updated.storm.crop$CROPDMGEXP)
## Warning: NAs introduced by coercion
updated.storm.crop$CROPDMGTOT <- updated.storm.crop$CROPDMG * updated.storm.crop$CROPDMGEXP
updated.storm.crop$EVTYPE<- toupper(updated.storm.crop$EVTYPE)
final.storm.crop <- aggregate(CROPDMGTOT~EVTYPE, data = updated.storm.crop , FUN=sum)
sort.subset.crop <- final.storm.crop[order(final.storm.crop$CROPDMGTOT),c(1,2)]
final.crop <- tail(sort.subset.crop,10)
final.crop
##               EVTYPE CROPDMGTOT
## 33      FROST/FREEZE  1.094e+09
## 17      EXTREME COLD  1.313e+09
## 21       FLASH FLOOD  1.421e+09
## 65 HURRICANE/TYPHOON  2.608e+09
## 60         HURRICANE  2.742e+09
## 38              HAIL  3.026e+09
## 68         ICE STORM  5.022e+09
## 74       RIVER FLOOD  5.029e+09
## 25             FLOOD  5.662e+09
## 9            DROUGHT  1.397e+10
barplot(final.crop$CROPDMGTOT,names.arg=final.crop$EVTYPE,cex.names=0.5,col=c("red","yellow","light blue","green","orange","black","pink","purple","grey","brown"), main="TOP 10 Events by Crop Damage")

plot of chunk unnamed-chunk-4

updated.storm.property$PROPDMGEXP <- gsub("B","1000000000",updated.storm.property$PROPDMGEXP)
updated.storm.property$PROPDMGEXP <- gsub("M","1000000",updated.storm.property$PROPDMGEXP)
updated.storm.property$PROPDMGEXP <- gsub("K","1000",updated.storm.property$PROPDMGEXP)
updated.storm.property$PROPDMGEXP <- as.numeric(updated.storm.property$PROPDMGEXP)
## Warning: NAs introduced by coercion
updated.storm.property$PROPDMGTOT <- updated.storm.property$PROPDMG * updated.storm.property$PROPDMGEXP
updated.storm.property$EVTYPE<- toupper(updated.storm.property$EVTYPE)
final.storm.property <- aggregate(PROPDMGTOT~EVTYPE, data = updated.storm.property, FUN=sum)
sort.subset.property <- final.storm.property[order(final.storm.property$PROPDMGTOT),c(1,2)]
final.property <- tail(sort.subset.property,10)
final.property
##                EVTYPE PROPDMGTOT
## 142         HIGH WIND  5.270e+09
## 365      WINTER STORM  6.688e+09
## 312    TROPICAL STORM  7.704e+09
## 157         HURRICANE  1.187e+10
## 91               HAIL  1.573e+10
## 46        FLASH FLOOD  1.614e+10
## 256       STORM SURGE  4.332e+10
## 304           TORNADO  5.693e+10
## 165 HURRICANE/TYPHOON  6.931e+10
## 58              FLOOD  1.447e+11
mytable <- (final.property$PROPDMGTOT)
mytable2 <- round(mytable/sum(mytable),2)
colors <- c("red","yellow","light blue","green","orange","black","pink","purple","grey","brown")
pie(mytable2,main = "Property Damages Percentages",col=colors,labels=c("High Wind","Winter Storm","Tropical Storm","Hurricane","Hail","Flash Flood","Storm Surge","Tornado","Huricane/Typhoon","Flood"))

plot of chunk unnamed-chunk-4