stri_rank: Ranking¶
Description¶
This function ranks each string in a character vector according to a locale-dependent lexicographic order. It is a portable replacement for the base xtfrm
function.
Usage¶
stri_rank(str, ..., opts_collator = NULL)
Arguments¶
|
a character vector |
|
additional settings for |
|
a named list with ICU Collator’s options, see stri_opts_collator, |
Details¶
Missing values result in missing ranks and tied observations receive the same ranks (based on min).
For more information on ICU’s Collator and how to tune it up in stringi, refer to stri_opts_collator.
Value¶
The result is a vector of ranks corresponding to each string in str
.
References¶
Collation - ICU User Guide, http://userguide.icu-project.org/collation
See Also¶
Other locale_sensitive: %s<%(), about_locale, about_search_boundaries, about_search_coll, stri_compare(), stri_count_boundaries(), stri_duplicated(), stri_enc_detect2(), stri_extract_all_boundaries(), stri_locate_all_boundaries(), stri_opts_collator(), stri_order(), stri_sort_key(), stri_sort(), stri_split_boundaries(), stri_trans_tolower(), stri_unique(), stri_wrap()
Examples¶
stri_rank(c('hladny', 'chladny'), locale='pl_PL')
stri_rank(c('hladny', 'chladny'), locale='sk_SK')
stri_rank("a" %s+% c(1, 100, 2, 101, 11, 10)) # lexicographic order
stri_rank("a" %s+% c(1, 100, 2, 101, 11, 10), numeric=TRUE)
# Ordering a data frame with respect to two criteria:
X <- data.frame(a=c("b", NA, "b", "b", NA, "a", "a", "c"), b=runif(8))
X[order(stri_rank(X$a), X$b), ]