Arranges the levels of data frame columns in a given order. Non-factor columns are silently converted.
Usage
order.levels(df, ..., drop.extra.levels = TRUE)
order.levels_(df, dots, drop.extra.levels = TRUE)Examples
require(dplyr)
str(df <- tibble(UPPER = LETTERS[3:1], lower = factor(letters[24:26]),
value = 1:3))
#> tibble [3 × 3] (S3: tbl_df/tbl/data.frame)
#> $ UPPER: chr [1:3] "C" "B" "A"
#> $ lower: Factor w/ 3 levels "x","y","z": 1 2 3
#> $ value: int [1:3] 1 2 3
str(order.levels(df, UPPER = LETTERS[1:3], lower = letters[26:20]))
#> tibble [3 × 3] (S3: tbl_df/tbl/data.frame)
#> $ UPPER: Factor w/ 3 levels "A","B","C": 3 2 1
#> $ lower: Factor w/ 3 levels "z","y","x": 3 2 1
#> $ value: int [1:3] 1 2 3
str(order.levels_(df, list(UPPER = LETTERS[1:3], lower = letters[26:23]),
drop.extra.levels = FALSE))
#> tibble [3 × 3] (S3: tbl_df/tbl/data.frame)
#> $ UPPER: Factor w/ 3 levels "A","B","C": 3 2 1
#> $ lower: Factor w/ 4 levels "z","y","x","w": 3 2 1
#> $ value: int [1:3] 1 2 3