R×stringr::str_sort 文字ベクトルをソートする

R言語で、文字ベクトルをソートする方法について解説します。文字列の操作には、tidyverseパッケージに含まれているstringrパッケージを使用するのが便利です。ここでは、stringrパッケージのstr_sort()を使用した方法についてお伝えします。

str_sort()の概要

str_sort()は、文字ベクトルをソートするための関数です。

str_rank()の使い方


str_sort(
  x,
  decreasing = FALSE,
  na_last = TRUE,
  locale = "en",
  numeric = FALSE,
  ...
)

str_rank()の引数

x

文字ベクトルまたは文字ベクトルに変換可能なものを指定します。

decreasing = FALSE

真偽値を指定します。
– FALSE(デフォルト): 低い順から高い順にソート
– TRUE : 高い順から低い順にソート

na_last = TRUE

NAをどこに配置するかを指定します。

– TRUE: 末尾に置き、NA は削除
– FALSE: 先頭に置き、NA は削除

locale = “en”

比較に使用するロケールを指定します。
使用可能なすべてのオプションについては、stringi::stri_locale_list() を参照してください。デフォルトの動作がプラットフォーム間で一貫しているように、デフォルトは “en”(英語)です。

numeric = FALSE

真偽値を指定します。TRUE の場合、数字を文字列ではなく数値としてソートします。

照合を制御するために使用されるその他のオプションを指定します。stringi::stri_opts_collator() に渡されます。

準備

あらかじめ、tidyverseパッケージを読み込んでおきます。


library(tidyverse)

使用例

文字列「りんご」と「ごりら」、「らっぱ」をソートしたベクトルを取得するには次のようにします。


str_sort(c("りんご", "ごりら", "らっぱ"))

[1] "ごりら" "らっぱ" "りんご"