Storms and other severe weather events can cause both public health and economic problems for communities and municipalities. Many severe events can result in fatalities, injuries, and property damage, and preventing such outcomes to the extent possible is a key concern.
This analysis involves exploring the U.S. National Oceanic and Atmospheric Administration’s (NOAA) storm database. This database tracks characteristics of major storms and weather events in the United States, including estimates of any fatalities, injuries, and property damage. The database covers weather events in the US from 1950 to 2011.
The results of the analysis show that Tornados have had the largest impact on population health (injuries and fatalities) where Floods have had the largest economic impacts (total property and cost damage amounts).
The data for this analysis came in the form of a comma-separated-value file compressed via the bzip2 algorithm to reduce its size. You can download the file from the following web site:
There is also some documentation of the database available. Here you will find how some of the variables are constructed/defined.
The events in the database start in the year 1950 and end in November 2011. In the earlier years of the database there are generally fewer events recorded, most likely due to a lack of good records. More recent years should be considered more complete.
# load libraries
library(tidyr)
## Warning: package 'tidyr' was built under R version 3.4.4
library(ggplot2)
url <- "https://d396qusza40orc.cloudfront.net/repdata%2Fdata%2FStormData.csv.bz2"
download.file(url,"repdata_data_StormData.csv.bz2","curl")
StormData <- read.csv("repdata_data_StormData.csv.bz2")
dldate <- Sys.Date()
## Warning in as.POSIXlt.POSIXct(Sys.time()): unknown timezone 'zone/tz/2018g.
## 1.0/zoneinfo/America/Chicago'
The data was loaded into a dataframe (‘StormData’) on 2019-01-04.
Per the documentation, property and crop damage amounts are each captured in 2 fields: one to record the significant digits and another to record the exponent amount. Alphabetical characters used to signify magnitude include “K” for thousands, “M” for millions, and “B” for billions. In preparing the data these fields are used to calculate a single field for each type of damage (Property and Crop). Those fields will contain the estimated damage amount in actual dollars (no exponent).
In addition, to the exponent amounts indicated in the documentation, the lower case of the existing indicators appear as well as other characters and spaces. The analysis assumes the lower case letters have the same meaning as their uppercase counterparts. However, I was not able to discern the correct exponent value for the other characters and spaces. In those cases the existing damage value was used in totals, without any exponent.
The total damage amounts, for records with non-standard exponents, do not appear to be material (and are 0 for Crop Damage). In addition, Property and Crop damage should be considered as a broad estimate per the documentation provided.
# Property Damage
table(StormData[StormData$PROPDMG>0,]$PROPDMGEXP)
##
## - ? + 0 1 2 3 4 5
## 76 1 0 5 209 0 1 1 4 18
## 6 7 8 B h H K m M
## 3 2 0 40 1 6 227481 7 11319
Bil <- c("B","b")
Mil <- c("M","m")
Tho <- c("K","k")
Hun <- c("H","h")
NG <- c("-","+","0","2","3","4","5","6","7","")
StormData$PDNumExp <- ifelse(StormData$PROPDMGEXP %in% Bil, 10^9,
ifelse(StormData$PROPDMGEXP %in% Mil, 10^6,
ifelse(StormData$PROPDMGEXP %in% Tho, 10^3,
ifelse(StormData$PROPDMGEXP %in% Hun, 10^2,
1))))
StormData$PDfull <- StormData$PROPDMG*StormData$PDNumExp
SumPDUnknownExp <- sum(StormData[StormData$PROPDMGEXP %in% NG, ]$PROPDMG)
SumPDRaw <- sum(StormData$PROPDMG, na.rm=TRUE)
SumPDfull <- sum(StormData$PDfull)
PctPDUknRaw <- SumPDUnknownExp/SumPDRaw*100
PctPDUknFull <- SumPDUnknownExp/SumPDfull*100
print(c(SumPDUnknownExp,SumPDRaw,SumPDfull,PctPDUknRaw,PctPDUknFull))
## [1] 8.171710e+03 1.088450e+07 4.273187e+11 7.507658e-02 1.912322e-06
# Crop Damage
table(StormData[StormData$CROPDMG>0,]$CROPDMGEXP)
##
## ? 0 2 B k K m M
## 3 0 12 0 7 21 20137 1 1918
Bil <- c("B","b")
Mil <- c("M","m")
Tho <- c("K","k")
Hun <- c("H","h")
NG <- c("0","","?")
StormData$CDNumExp <- ifelse(StormData$CROPDMGEXP %in% Bil, 10^9,
ifelse(StormData$CROPDMGEXP %in% Mil, 10^6,
ifelse(StormData$CROPDMGEXP %in% Tho, 10^3,
ifelse(StormData$CROPDMGEXP %in% Hun, 10^2,
1))))
StormData$CDfull <- StormData$CROPDMG*StormData$CDNumExp
SumCDUnknownExp <- sum(StormData[StormData$CROPDMGEXP %in% NG, ]$CROCDMG)
SumCDUnknownExp
## [1] 0
The Event Type codes are not consistent or discrete (likely due to manual error and standards changing over time). A table of the current Storm Data Events is included in the source data documentation (see p. 6).
First the unique list of Event Types was generated for records showing any impact.
SigEvents <- StormData[StormData$FATALITIES>0 |
StormData$INJURIES>0 |
StormData$PDfull>0 |
StormData$CDfull>0,]
SigEventUniq <- (unique
(trimws
(toupper
(as.character
(SigEvents$EVTYPE))),which="both"))
length(SigEventUniq)
## [1] 444
These significant unique event codes were then assigned to a code from the Storm Data Events Table (see p. 6). Approximate assignments were made through individual review of the recorded Event Types.
The code for these assignments is shown in Appendix A (due to it’s length). Attempts were made to rationalize the Event Types through clustering and string comparison, but these did not yield as a good a result as assigning each individually. Note: the Storm Data Event Types provided in the documentation still do not seem discrete, however they are an improvement over the recorded event types and may represent distinctions that are import to policy makers.
Then the assigned Event Type codes from the documentation were merged onto the records.
StormData$EVTYPEChar <- trimws(toupper(as.character(StormData$EVTYPE)),which="both")
StormDataM <- merge(StormData, codes2, by.x = "EVTYPEChar", by.y = "SigEventUniq")
A graph of the top 10 event types impacting health show that Tornados have the largest impact on health. (As measured by total injuries and fatalities.)
TotH2 <- gather(StormDataM, ImpType, Count, INJURIES, FATALITIES) # create ImpType to show Injuries or Fatalities
TotH2$OfficialET <- as.factor(TotH2$OfficialET) # make the Official Event Type (OfficialET) a factor.
TotH2 <- transform(TotH2, OfficialET = reorder(OfficialET,Count,sum)) # reorder the factor based on total impact (to get the bars in the right order)
TotH2 <- TotH2[as.integer(TotH2$OfficialET)>(nlevels(TotH2$OfficialET)-10),] # only include the top 10 factors (that were ordered by size of impact)
# TotH2 <- TotH2[sample(nrow(TotH2),100000),]
hbar <- ggplot(data = TotH2, aes(x = OfficialET, y = Count / 1000, fill = ImpType))+
geom_bar(stat="identity") +
coord_flip() +
labs(title="Total Health Impact by Weather Event Type",x="Event Type",y="Health Impact (injuries+fatalities (in '000s))",subtitle="1950-2012 US NWS Data") +
scale_y_continuous(labels = scales::comma) +
theme_classic() +
theme(plot.title = element_text(hjust = 0.5), plot.subtitle = element_text(hjust = 0.5)) +
scale_fill_discrete(name="Impact Type")
hbar
A graph of the top 10 event types impacting the economy show that Floods have the largest impact on the economy. (As measured by total estimates of both Property and Crop damage.)
TotE2 <- gather(StormDataM, ImpType, Count, PDfull, CDfull)
TotE2$OfficialET <- as.factor(TotE2$OfficialET)
TotE2 <- transform(TotE2, OfficialET = reorder(OfficialET,Count,sum))
TotE2 <- TotE2[as.integer(TotE2$OfficialET)>(nlevels(TotE2$OfficialET)-10),]
ebar <- ggplot(data = TotE2, aes(x = OfficialET, y = Count / 1000000000, fill = ImpType))+
geom_bar(stat="identity") +
coord_flip() +
labs(title="Total Economic Impact by Weather Event Type",x="Event Type",y="Economic Impact (total Property & Crop damage - in $ Billion))",subtitle="1950-2012 US NWS Data") +
scale_y_continuous(labels = scales::dollar) +
theme_classic() +
theme(plot.title = element_text(hjust = 0.5), plot.subtitle = element_text(hjust = 0.5)) +
scale_fill_discrete(name="Impact Type",labels=c("Crop Damage","Property Damage"))
ebar
Event type assignment code.
codes2 <- as.data.frame(SigEventUniq)
codes2$OfficialET <- NA
codes2$OfficialET <- as.character(codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="AVALANCHE","Avalanche",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="AVALANCE","Avalanche",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXTREME COLD","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COOL AND WET","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD AND WET CONDITIONS","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXTREME WIND CHILL","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RECORD COLD","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD WAVE","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/COLD","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="UNSEASONABLY COLD","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LOW TEMPERATURE","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HYPOTHERMIA","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WINDS/COLD","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD/WINDS","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/ BITTER COLD","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD WEATHER","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="UNSEASONABLE COLD","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXTREME WINDCHILL","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXTENDED COLD","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD TEMPERATURE","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD AND SNOW","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HYPOTHERMIA/EXPOSURE","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HYPERTHERMIA/EXPOSURE","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXTREME COLD/WIND CHILL","Extreme Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD/WIND CHILL","Cold/Wind Chill",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DROUGHT","Drought",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="UNSEASONABLY WARM AND DRY","Drought",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DUST STORM","Dust Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DUST DEVIL","Dust Devil",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DUST DEVIL WATERSPOUT","Dust Devil",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DUST STORM/HIGH WINDS","Dust Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="BLOWING DUST","Dust Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE STORM/FLASH FLOOD","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOODING","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOODING/THUNDERSTORM WI","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="BREAKUP FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RIVER FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COASTAL FLOOD","Coastal Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOODING/HEAVY RAIN","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SURF COASTAL FLOODING","Coastal Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD/FLASH FLOOD","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD/RAIN/WINDS","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD WINDS","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD/","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COASTAL FLOODING","Coastal Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN/SMALL STREAM FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MINOR FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOODS","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOODS","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RURAL FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MAJOR FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE JAM FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SMALL STREAM FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LAKE FLOOD","Lakeshore Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN AND SMALL STREAM FLOODIN","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RIVER AND STREAM FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WINDS/COASTAL FLOOD","Coastal Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RIVER FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD/RIVER FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MUD SLIDES URBAN FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW/HIGH WINDS & FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAIN AND FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN AND SMALL","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD FROM ICE JAMS","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD - HEAVY RAIN","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD/ STREET","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD FLASH","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD/FLOOD","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD/FLASH","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAINS/FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS/FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RAPIDLY RISING WATER","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOWMELT FLOODING","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOODING/FLOOD","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS/ FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD & HEAVY RAIN","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD/FLASHFLOOD","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN/SMALL STREAM","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN SMALL","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN FLOODS","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD/LANDSLIDE","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLASH FLOOD LANDSLIDES","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE JAM FLOOD (MINOR","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="URBAN/SML STREAM FLD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EROSION/CSTL FLOOD","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COASTAL FLOODING/EROSION","Coastal Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COASTAL FLOODING/EROSION","Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FLOOD/FLASH/FLOOD","Flash Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LAKESHORE FLOOD","Lakeshore Flood",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DENSE FOG","Dense Fog",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FOG","Dense Fog",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FOG AND COLD TEMPERATURES","Freezing Fog",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FREEZING FOG","Freezing Fog",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FREEZE","Frost/Freeze",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DAMAGING FREEZE","Frost/Freeze",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FROST","Frost/Freeze",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FROST\\FREEZE","Frost/Freeze",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HARD FREEZE","Frost/Freeze",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EARLY FROST","Frost/Freeze",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FROST/FREEZE","Frost/Freeze",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="AGRICULTURAL FREEZE","Frost/Freeze",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL/WINDS","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL/WIND","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WIND/HAIL","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 150","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 075","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 100","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 125","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 200","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 0.75","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 75","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 175","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 275","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL 450","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAILSTORM","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAIL DAMAGE","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SMALL HAIL","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GUSTY WIND/HAIL","Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAT","Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXCESSIVE HEAT","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAT WAVE","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="UNSEASONABLY WARM","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXTREME HEAT","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DROUGHT/EXCESSIVE HEAT","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RECORD HEAT","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAT WAVE DROUGHT","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAT WAVES","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RECORD/EXCESSIVE HEAT","Excessive Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WARM WEATHER","Heat",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAIN","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAINS","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RECORD RAINFALL","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RAINSTORM","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXCESSIVE WETNESS","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAIN/SEVERE WEATHER","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RAIN","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HVY RAIN","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY PRECIPITATION","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXCESSIVE RAINFALL","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SHOWER","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAIN/SMALL STREAM URBAN","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAIN/HIGH SURF","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORRENTIAL RAINFALL","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MIXED PRECIP","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DOWNBURST","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MIXED PRECIPITATION","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="UNSEASONAL RAIN","Heavy Rain",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE OPAL/HIGH WINDS","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE ERIN","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE OPAL","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE-GENERATED SWELLS","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE EMILY","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE GORDON","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE FELIX","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE EDOUARD","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TYPHOON","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HURRICANE/TYPHOON","Hurricane (Typhoon)",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING AND HEAVY RAIN","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAIN/LIGHTNING","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING/HEAVY RAIN","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING INJURY","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGNTNING","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING.","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING FIRE","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING WAUSEON","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTING","Lightning",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MARINE MISHAP","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MARINE ACCIDENT","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MARINE TSTM WIND","Marine Thunderstorm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MARINE HIGH WIND","Marine High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MARINE THUNDERSTORM WIND","Marine Thunderstorm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MARINE STRONG WIND","Marine Strong Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MARINE HAIL","Marine Hail",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ASTRONOMICAL LOW TIDE","ASTRONOMICAL LOW TIDE",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SEVERE TURBULENCE","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="APACHE COUNTY","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MUDSLIDES","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MUD SLIDE","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MUD SLIDES","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE FLOES","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE JAM","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MUDSLIDE","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LANDSLIDE","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="?","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LANDSLIDES","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="OTHER","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="BEACH EROSION","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LANDSLUMP","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DAM BREAK","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COASTAL EROSION","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ROCK SLIDE","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="VOLCANIC ASH","Volcanic Ash",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DROWNING","Other",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RIP CURRENT","Rip Current",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RIP CURRENTS","Rip Current",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SEICHE","Seiche",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SLEET","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE STORM","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GLAZE ICE","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SLEET/ICE STORM","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FREEZING RAIN","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FREEZING RAIN/SLEET","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GLAZE/ICE STORM","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GLAZE","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICY ROADS","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE/STRONG WINDS","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FREEZING DRIZZLE","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FREEZING SPRAY","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="BLACK ICE","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHT FREEZING RAIN","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE ROADS","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE ON ROAD","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FREEZING RAIN/SNOW","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW AND ICE","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW AND ICE STORM","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/ICE STORM","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW FREEZING RAIN","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/SLEET","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/FREEZING RAIN","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/SLEET/FREEZING RAIN","Sleet",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ICE AND SNOW","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/ICE","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/ ICE","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FALLING SNOW/ICE","Ice Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DENSE SMOKE","Dense Smoke",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW/WIND","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOWPACK","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="BLIZZARD","Blizzard",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY RAIN/SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW AND HEAVY SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GROUND BLIZZARD","Blizzard",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/HEAVY SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY LAKE SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW/FREEZING RAIN","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW/WINTER STORM","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="BLIZZARD/WINTER STORM","Blizzard",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW AND HIGH WINDS","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW SQUALLS","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW SQUALL","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW/SQUALLS","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW-SQUALLS","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW SQUALLS","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RECORD SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="BLOWING SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW/BLIZZARD","Blizzard",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW/ICE","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WIND/HEAVY SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WIND/BLIZZARD","Blizzard",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW/BLIZZARD/AVALANCHE","Blizzard",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/HIGH WINDS","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WINDS/SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW AND STRONG WINDS","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW ACCUMULATION","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SNOW/BLOWING SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SNOW SHOWER","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RAIN/SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LAKE EFFECT SNOW","Lake-Effect Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHT SNOW","Lake-Effect Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="EXCESSIVE SNOW","Heavy Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LATE SEASON SNOW","Lake-Effect Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LAKE-EFFECT SNOW","Lake-Effect Snow",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TIDAL FLOODING","Storm Surge/Tide",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH TIDES","Storm Surge/Tide",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="STORM SURGE","Storm Surge/Tide",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COASTAL SURGE","Storm Surge/Tide",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ASTRONOMICAL HIGH TIDE","Storm Surge/Tide",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="STORM SURGE/TIDE","Storm Surge/Tide",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH SEAS","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH SURF","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SURF","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RIP CURRENTS/HEAVY SURF","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WAVES","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SEAS","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WATER","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SWELLS","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ROUGH SURF","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SURF AND WIND","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH SWELLS","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WIND AND WAVE","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ROUGH SEAS","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="ROGUE WAVE","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH SURF ADVISORY","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HAZARDOUS SURF","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY SURF/HIGH SURF","High Surf",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS LIGHTNING","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS/HAIL","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS HAIL","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS/FUNNEL CLOU","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SEVERE THUNDERSTORM","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SEVERE THUNDERSTORMS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="SEVERE THUNDERSTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORMS WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORMS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDSS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING THUNDERSTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHTNING AND THUNDERSTORM WIN","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS53","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS 13","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSNOW","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GUSTNADO","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND 55","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORMS WIND","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TUNDERSTORM WIND","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND/LIGHTNING","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND G50","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS.","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND G55","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND G60","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS G60","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND G58","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND 65MPH","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND/ TREES","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND/AWNING","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND 98 MPH","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND TREES","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND 60 MPH","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS 63 MPH","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND/ TREE","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM DAMAGE TO","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND 65 MPH","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND.","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM HAIL","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDSHAIL","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUDERSTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WINDS AND","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND DAMAGE","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND G52","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERESTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDEERSTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNERSTORM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND/HAIL","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORMW","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTMW","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND 65)","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORMWINDS","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTROM WIND","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND/HAIL","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COASTAL STORM","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND (G45)","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND 40","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND 45","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND (41)","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND (G40)","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COASTALSTORM","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND AND LIGHTNING","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND (G45)","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND (G35)","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSTM WIND G45","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="THUNDERSTORM WIND (G40)","Thunderstorm Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORNADO","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORNADO F0","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WATERSPOUT","Waterspout",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FUNNEL CLOUD","Funnel Cloud",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WATERSPOUT/TORNADO","Waterspout",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WATERSPOUT TORNADO","Waterspout",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WATERSPOUT-","Waterspout",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORNADOES, TSTM WIND, HAIL","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WATERSPOUT-TORNADO","Waterspout",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="COLD AIR TORNADO","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WATERSPOUT/ TORNADO","Waterspout",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORNADO F3","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORNDAO","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORNADO F1","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORNADO F2","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TORNADOES","Tornado",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TROPICAL STORM ALBERTO","Tropical Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TROPICAL STORM","Tropical Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TROPICAL STORM GORDON","Tropical Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TROPICAL STORM JERRY","Tropical Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TROPICAL STORM DEAN","Tropical Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TROPICAL DEPRESSION","Tropical Depression",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="TSUNAMI","Tsunami",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WILD FIRES","Wildfire",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WILDFIRE","Wildfire",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GRASS FIRES","Wildfire",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="FOREST FIRES","Wildfire",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WILDFIRES","Wildfire",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WILD/FOREST FIRE","Wildfire",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WILD/FOREST FIRES","Wildfire",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="BRUSH FIRE","Wildfire",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LANDSPOUT","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="NON-TSTM WIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="NON TSTM WIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WINDS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WINDS HEAVY RAINS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WIND/SEAS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WINDS/HEAVY RAIN","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GUSTY WINDS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WINDS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WIND DAMAGE","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="STRONG WIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DRY MIRCOBURST WINDS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="DRY MICROBURST","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MICROBURST WINDS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="STRONG WINDS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WINDS/","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WINDS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WIND DAMAGE","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WIND STORM","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="MICROBURST","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="STORM FORCE WINDS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="RAIN/WIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WIND AND SEAS","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WIND 48","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WHIRLWIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GUSTY WIND/RAIN","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GUSTY WIND/HVY RAIN","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GUSTY WIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="GRADIENT WIND","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WET MICROBURST","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HIGH WIND (G40)","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="NON-SEVERE WIND DAMAGE","High Wind",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="LIGHT SNOWFALL","Winter Weather",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WINTER STORM","Winter Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WINTER STORM HIGH WINDS","Winter Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WINTER STORMS","Winter Storm",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WINTER WEATHER","Winter Weather",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="HEAVY MIX","Winter Weather",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WINTRY MIX","Winter Weather",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WINTER WEATHER MIX","Winter Weather",codes2$OfficialET)
codes2$OfficialET <- ifelse(is.na(codes2$OfficialET) & codes2$SigEventUniq=="WINTER WEATHER/MIX","Winter Weather",codes2$OfficialET)
sum(is.na(codes2$OfficialET))
## [1] 0