stri_order determines a permutation which rearranges strings into an ascending or descending order. stri_sort sorts the vector according to a lexicographic order.
stri_order(str, decreasing = FALSE, na_last = TRUE, ...,
opts_collator = NULL)stri_sort(str, decreasing = FALSE, na_last = NA, ...,
opts_collator = NULL)
a character vector
a single logical value; should the sort order
be nondecreasing (FALSE
, default)
or nonincreasing (TRUE
)?
a single logical value; controls the treatment of NA
s
in str
. If TRUE
, then missing values in str
are put
at the end; if FALSE
, they are put at the beginning;
if NA
, then they are removed from the output.
additional settings for opts_collator
a named list with ICU Collator's options
as generated with stri_opts_collator
, NULL
for default collation options
For stri_order
, an integer vector that gives the sort order
is returned.
For stri_order
, you get a sorted version of str
,
i.e. a character vector.
For more information on ICU's Collator and how to tune it up
in stringi, refer to stri_opts_collator
.
These functions use a stable sort algorithm (STL's stable_sort),
which performs up to \(N*log^2(N)\) element comparisons,
where \(N\) is the length of str
.
Interestingly, our benchmarks indicate that stri_order
is most often faster that R's order
.
Collation - ICU User Guide, http://userguide.icu-project.org/collation
Other locale_sensitive: %s<%
,
stri_compare
,
stri_count_boundaries
,
stri_duplicated
,
stri_enc_detect2
,
stri_extract_all_boundaries
,
stri_locate_all_boundaries
,
stri_opts_collator
,
stri_split_boundaries
,
stri_trans_tolower
,
stri_unique
, stri_wrap
,
stringi-locale
,
stringi-search-boundaries
,
stringi-search-coll
# NOT RUN {
stri_sort(c("hladny", "chladny"), locale="pl_PL")
stri_sort(c("hladny", "chladny"), locale="sk_SK")
# }
Run the code above in your browser using DataLab