fires <- read_xlsx("myData.xlsx")
Make two bar charts here - one before ordering another after
Unordered factor levels
fires_by_severity <- fires %>%
group_by(SEVERITY) %>%
summarise(
avg_acres_burned = mean(ACRES_BURNED, na.rm = TRUE)
)
fires_by_severity
## # A tibble: 3 × 2
## SEVERITY avg_acres_burned
## <chr> <dbl>
## 1 Mild 113379.
## 2 Moderate 199446.
## 3 Severe 513208.
# Plot
fires_by_severity %>%
ggplot(aes(x = avg_acres_burned, y = SEVERITY)) +
geom_point()
Ordered factors
fires_by_severity %>%
ggplot(aes(x = avg_acres_burned, y = fct_reorder(.f = SEVERITY, .x = avg_acres_burned))) +
geom_point() +
# Labeling
labs(y = NULL, x = "Average Acres Burned Per Fire")
Show examples of three functions:
# Recode
fires %>%
# Rename levels
mutate(Severity.new = fct_recode(SEVERITY, "Bad" = "Severe")) %>%
select(SEVERITY, Severity.new) %>%
filter(SEVERITY == "Severe")
## # A tibble: 9 × 2
## SEVERITY Severity.new
## <chr> <fct>
## 1 Severe Bad
## 2 Severe Bad
## 3 Severe Bad
## 4 Severe Bad
## 5 Severe Bad
## 6 Severe Bad
## 7 Severe Bad
## 8 Severe Bad
## 9 Severe Bad
fires %>%
mutate(Severity_col = fct_collapse(SEVERITY, "Dangerous" = c("Severe", "Moderate"))) %>%
select(SEVERITY, Severity_col) %>%
filter(SEVERITY != "Mild")
## # A tibble: 43 × 2
## SEVERITY Severity_col
## <chr> <fct>
## 1 Moderate Dangerous
## 2 Severe Dangerous
## 3 Moderate Dangerous
## 4 Severe Dangerous
## 5 Moderate Dangerous
## 6 Severe Dangerous
## 7 Moderate Dangerous
## 8 Moderate Dangerous
## 9 Moderate Dangerous
## 10 Severe Dangerous
## # ℹ 33 more rows
fires %>% count(SEVERITY)
## # A tibble: 3 × 2
## SEVERITY n
## <chr> <int>
## 1 Mild 40
## 2 Moderate 34
## 3 Severe 9
fires %>% mutate(Severity_lump = fct_lump(SEVERITY)) %>% distinct(Severity_lump)
## # A tibble: 3 × 1
## Severity_lump
## <fct>
## 1 Moderate
## 2 Other
## 3 Mild
No need to do anything here.