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