Let's say I have the following tibble
dataframe called data
:
library(tibble)
data <- tribble(
~"ID", ~"some factor", ~"some other factor",
1L, "low", "high",
2L, "very high", "low",
3L, "very low", "low",
4L, "high", "very high",
5L, "very low", "very low"
)
I use the fct()
function in forcats
to convert my two factor variables accordingly:
library(dplyr)
library(forcats)
data <- data %>%
mutate(across(starts_with("some"), fct))
Which gives me:
# A tibble: 5 × 3
ID `some factor` `some other factor`
<int> <fct> <fct>
1 1 low high
2 2 very high low
3 3 very low low
4 4 high very high
5 5 very low very low
However, when I call fct
this way it's unclear to me how to specify the levels of this ordinal variable. The order I would like is:
order <- c("very low", "low", "high", "very high")
How should I do this with dplyr
's set of functions? The goal is to have ggplot2
visualizations that respect this ordering.