Scoped verbs (_if
, _at
, _all
) have been superseded by the use of
pick()
or across()
in an existing verb. See vignette("colwise")
for
details.
These scoped variants of arrange()
sort a data frame by a
selection of variables. Like arrange()
, you can modify the
variables before ordering with the .funs
argument.
A tbl
object.
A function fun
, a quosure style lambda ~ fun(.)
or a list of either form.
Additional arguments for the function calls in
.funs
. These are evaluated only once, with tidy dots support.
If TRUE
, will sort first by grouping variable. Applies to
grouped data frames only.
The locale to sort character vectors in.
If NULL
, the default, uses the "C"
locale unless the
dplyr.legacy_locale
global option escape hatch is active. See the
dplyr-locale help page for more details.
If a single string from stringi::stri_locale_list()
is supplied, then
this will be used as the locale to sort with. For example, "en"
will
sort with the American English locale. This requires the stringi package.
If "C"
is supplied, then character vectors will always be sorted in the
C locale. This does not require stringi and is often much faster than
supplying a locale identifier.
The C locale is not the same as English locales, such as "en"
,
particularly when it comes to data containing a mix of upper and lower case
letters. This is explained in more detail on the locale
help page under the Default locale
section.
A list of columns generated by vars()
,
a character vector of column names, a numeric vector of column
positions, or NULL
.
A predicate function to be applied to the columns
or a logical vector. The variables for which .predicate
is or
returns TRUE
are selected. This argument is passed to
rlang::as_function()
and thus supports quosure-style lambda
functions and strings representing function names.
The grouping variables that are part of the selection participate in the sorting of the data frame.
df <- as_tibble(mtcars)
arrange_all(df)
#> # A tibble: 32 × 11
#> mpg cyl disp hp drat wt qsec vs am gear carb
#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 10.4 8 460 215 3 5.42 17.8 0 0 3 4
#> 2 10.4 8 472 205 2.93 5.25 18.0 0 0 3 4
#> 3 13.3 8 350 245 3.73 3.84 15.4 0 0 3 4
#> 4 14.3 8 360 245 3.21 3.57 15.8 0 0 3 4
#> 5 14.7 8 440 230 3.23 5.34 17.4 0 0 3 4
#> 6 15 8 301 335 3.54 3.57 14.6 0 1 5 8
#> 7 15.2 8 276. 180 3.07 3.78 18 0 0 3 3
#> 8 15.2 8 304 150 3.15 3.44 17.3 0 0 3 2
#> 9 15.5 8 318 150 2.76 3.52 16.9 0 0 3 2
#> 10 15.8 8 351 264 4.22 3.17 14.5 0 1 5 4
#> # ℹ 22 more rows
# ->
arrange(df, pick(everything()))
#> # A tibble: 32 × 11
#> mpg cyl disp hp drat wt qsec vs am gear carb
#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 10.4 8 460 215 3 5.42 17.8 0 0 3 4
#> 2 10.4 8 472 205 2.93 5.25 18.0 0 0 3 4
#> 3 13.3 8 350 245 3.73 3.84 15.4 0 0 3 4
#> 4 14.3 8 360 245 3.21 3.57 15.8 0 0 3 4
#> 5 14.7 8 440 230 3.23 5.34 17.4 0 0 3 4
#> 6 15 8 301 335 3.54 3.57 14.6 0 1 5 8
#> 7 15.2 8 276. 180 3.07 3.78 18 0 0 3 3
#> 8 15.2 8 304 150 3.15 3.44 17.3 0 0 3 2
#> 9 15.5 8 318 150 2.76 3.52 16.9 0 0 3 2
#> 10 15.8 8 351 264 4.22 3.17 14.5 0 1 5 4
#> # ℹ 22 more rows
arrange_all(df, desc)
#> # A tibble: 32 × 11
#> mpg cyl disp hp drat wt qsec vs am gear carb
#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 33.9 4 71.1 65 4.22 1.84 19.9 1 1 4 1
#> 2 32.4 4 78.7 66 4.08 2.2 19.5 1 1 4 1
#> 3 30.4 4 95.1 113 3.77 1.51 16.9 1 1 5 2
#> 4 30.4 4 75.7 52 4.93 1.62 18.5 1 1 4 2
#> 5 27.3 4 79 66 4.08 1.94 18.9 1 1 4 1
#> 6 26 4 120. 91 4.43 2.14 16.7 0 1 5 2
#> 7 24.4 4 147. 62 3.69 3.19 20 1 0 4 2
#> 8 22.8 4 141. 95 3.92 3.15 22.9 1 0 4 2
#> 9 22.8 4 108 93 3.85 2.32 18.6 1 1 4 1
#> 10 21.5 4 120. 97 3.7 2.46 20.0 1 0 3 1
#> # ℹ 22 more rows
# ->
arrange(df, across(everything(), desc))
#> # A tibble: 32 × 11
#> mpg cyl disp hp drat wt qsec vs am gear carb
#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 33.9 4 71.1 65 4.22 1.84 19.9 1 1 4 1
#> 2 32.4 4 78.7 66 4.08 2.2 19.5 1 1 4 1
#> 3 30.4 4 95.1 113 3.77 1.51 16.9 1 1 5 2
#> 4 30.4 4 75.7 52 4.93 1.62 18.5 1 1 4 2
#> 5 27.3 4 79 66 4.08 1.94 18.9 1 1 4 1
#> 6 26 4 120. 91 4.43 2.14 16.7 0 1 5 2
#> 7 24.4 4 147. 62 3.69 3.19 20 1 0 4 2
#> 8 22.8 4 141. 95 3.92 3.15 22.9 1 0 4 2
#> 9 22.8 4 108 93 3.85 2.32 18.6 1 1 4 1
#> 10 21.5 4 120. 97 3.7 2.46 20.0 1 0 3 1
#> # ℹ 22 more rows