R: 文字列の末尾から部分文字列を抽出します
次のメソッドを使用して、文字列の末尾から始まる R の部分文字列を抽出できます。
方法 1: Base R を使用する
#define function to extract n characters starting from end substr_end <- function (x, n){ substr(x, nchar(x)-n+ 1 , nchar(x)) } #extract 3 characters starting from end substr_end(my_string, 3 )
方法 2: stringr パッケージを使用する
library (stringr) #extract 3 characters starting from end str_sub(my_string, start = - 3 )
これら 2 つの例では、 my_stringという文字列から最後の 3 文字を抽出します。
次の例は、次のデータ フレームで各メソッドを実際に使用する方法を示しています。
#create data frame
df <- data. frame (team=c('Mavericks', 'Lakers', 'Hawks', 'Nets', 'Warriors'),
dots=c(100, 143, 129, 113, 123))
#view data frame
df
team points
1 Mavericks 100
2 Lakers 143
3 Hawks 129
4 Nets 113
5 Warriors 123
例 1: Base R を使用して末尾から部分文字列を抽出する
次のコードは、ベース R でカスタム関数を定義し、その関数を使用してチーム列の各文字列から最後の 3 文字を抽出する方法を示しています。
#define function to extract n characters starting from end substr_end <- function (x, n){ substr(x, nchar(x)-n+ 1 , nchar(x)) } #create new column that extracts last 3 characters from team column df$team_last3 <- substr_end(my_string, 3 ) #view updated data frame df team points team_last3 1 Mavericks 100 cks 2 Lakers 143ers 3 Hawks 129 wks 4 Nets 113 ets 5 Warriors 123 gold
team_last3という新しい列には、データ フレームのチーム列の各文字列の最後の 3 文字が含まれることに注意してください。
例 2: stringr パッケージを使用して末尾から部分文字列を抽出する
次のコードは、R のstringrパッケージのstr_sub()関数を使用して、チーム列の各文字列から最後の 3 文字を抽出する方法を示しています。
library (stringr) #create new column that extracts last 3 characters from team column df$team_last3 <- str_sub(df$team, start = - 3 ) #view updated data frame df team points team_last3 1 Mavericks 100 cks 2 Lakers 143ers 3 Hawks 129 wks 4 Nets 113 ets 5 Warriors 123 gold
team_last3という新しい列には、データ フレームのチーム列の各文字列の最後の 3 文字が含まれることに注意してください。
これは、R 基底を使用した前の方法の結果に対応します。
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。