R言語のstringrパッケージに含まれているstr_unique()関数について解説します。この関数は、「文字列のベクトルから、重複している要素を削ってユニークな(一意の)値だけを抜き出したい」ときに使える関数です。
stringrパッケージは、文字列データを操作するための強力で便利な関数を多く取り扱っています。また、Rのデータサイエンス向け主要パッケージ群であるtidyverseパッケージにも含まれています。
概要
str_unique()は、重複した文字列を削除するための関数です。重複の判定方法はオプションで制御できます。
使い方
str_unique(string, locale = "en", ignore_case = FALSE, ...)
引数
string
文字ベクトルまたは文字ベクトルに変換可能なものを指定します。
locale = “en”
比較に使用するロケールを指定します。
使用可能なすべてのオプションについては、stringi::stri_locale_list()を参照してください。プラットフォーム間でデフォルトの動作が一貫しているように、デフォルトは”en”(英語)です。
ignore_case = FALSE
文字列の比較時に大文字と小文字を区別するかどうかを指定します。
…
照合順序を制御するためのその他のオプションを指定します。
stringi::stri_opts_collator()に渡されます。
戻り値
文字ベクトルを返します。通常は最初の文字列よりも短いです。
使用例
準備
あらかじめ、tidyverseパッケージまたはstringrパッケージを読み込んでおきます。
# library(tidyverse)でもよい
library(stringr)
重複した文字列を削除する
文字列ベクトル(“ゆきや”, “こんこ”, “あられや”, “こんこ”, “ふっては”, “ふっては”, “ずんずん”, “つもる”)の重複を削除するには次のようにします。
str_unique(c("ゆきや", "こんこ", "あられや", "こんこ", "ふっては", "ふっては", "ずんずん", "つもる"))
[1] "ゆきや" "こんこ" "あられや" "ふっては" "ずんずん" "つもる"