R言語のstringrパッケージに含まれているstr_trunc()関数について解説します。この関数は、「長い文字列を、指定した文字数で切り捨てて、末尾を省略記号(… など)に置き換えたい」ときに使える関数です。画面の表示スペースや出力の枠が決まっている際、文字列がはみ出さないようにスッキリ収めるのに役立ちます。
stringrパッケージは、文字列データを操作するための強力で便利な関数を多く取り扱っています。また、Rのデータサイエンス向け主要パッケージ群であるtidyverseパッケージにも含まれています。
概要
str_trunc()は、文字列を最大幅に切り詰めるための関数です。str_length(str_trunc(x, n))が常にn以下になるように、文字列を固定長の文字数に切り詰めます。
使い方
str_trunc(string, width, side = c("right", "left", "center"), ellipsis = "...")
引数
string
文字ベクトルまたは文字ベクトルに変換可能なものを指定します。
width
文字列の最大幅を指定します。
side = c(“right”, “left”, “center”)
省略記号の位置を指定します。
ellipsis = “…”
省略記号の内容を指定します。
省略記号の内容は、内容が削除されたことを示します。
戻り値
文字列と同じ長さの文字ベクトルを返します。
使用例
準備
あらかじめ、tidyverseパッケージまたはstringrパッケージを読み込んでおきます。
# library(tidyverse)でもよい
library(stringr)
文字列を切り詰める
文字列「ゆきやこんこ あられやこんこ ふってはふっては ずんずんつもる」を先頭から省略文字を含んで10文字とするには次のようにします。
str_trunc("ゆきやこんこ あられやこんこ ふってはふっては ずんずんつもる", 10, "right")
[1] "ゆきやこんこ ..."