R で部分文字列関数を使用する方法 (4 つの例)
R のsubstring()関数を使用して、文字ベクトル内の部分文字列を抽出できます。
この関数は次の構文を使用します。
substring(text, first, last)
金:
- text:文字ベクトル名
- first:抽出する最初の要素
- last:抽出する最後の要素
また、 substr()関数はまったく同じことを行いますが、引数名が若干異なることに注意してください。
substr(text, first, last)
金:
- x:文字ベクトル名
- start:抽出する最初の要素
- stop:抽出する最後の要素
このチュートリアルの例では、R の次のデータ フレームでsubstring()関数を実際に使用する方法を示します。
#create data frame
df <- data. frame (team=c('Mavericks', 'Hornets', 'Rockets', 'Grizzlies'))
#view data frame
df
team
1 Mavericks
2 Hornets
3 Rockets
4 Grizzlies
例 1: 特定の位置間の文字を抽出する
次のコードは、 substring()関数を使用して、「team」列の位置 2 から 5 までの文字を抽出する方法を示しています。
#create new column that contains characters between positions 2 and 5
df$between2_5 <- substring(df$team, first= 2 , last= 5 )
#view updated data frame
df
team between2_5
1 Mavericks aver
2 Hornets adorns
3 Rockets ocke
4 Rizz Grizzlies
新しい列には、「チーム」列の位置 2 から 5 までの文字が含まれることに注意してください。
例 2: 最初の N 文字を抽出する
次のコードは、 substring()関数を使用して「チーム」列から最初の 3 文字を抽出する方法を示しています。
#create new column that contains first 3 characters
df$first3 <- substring(df$team, first= 1 , last= 3 )
#view updated data frame
df
team first3
1 Mavericks Mavs
2 Hornets Hor
3 Rockets Roc
4 Grizzlies Gray
新しい列には、「チーム」列の最初の 3 文字が含まれることに注意してください。
例 3: 最後の N 文字を抽出する
次のコードは、 substring()関数を使用して、「チーム」列から最後の 3 文字を抽出する方法を示しています。
#create new column that contains last 3 characters
df$last3 <- substring(df$team, nchar (df$team)- 3 +1, nchar (df$team))
#view updated data frame
df
team last3
1 Mavericks cks
2 Hornets ets
3 Rockets ets
4 Grizzlies ies
新しい列には、「チーム」列の最後の 3 文字が含まれることに注意してください。
例 4: 部分文字列を置換する
次のコードは、 substring()関数を使用して、「チーム」列の値の最初の 3 文字を 3 つのアスタリスクに置き換える方法を示しています。
#replace first 3 characters with asterisks in team column
substring(df$team, first= 1 , last= 3 ) <- " *** "
#view updated data frame
df
team
1 ***ericks
2 ***net
3 ***kets
4 ***zzlies
各チーム名の最初の 3 文字がアスタリスクに置き換えられていることに注意してください。
追加リソース
次のチュートリアルでは、R で文字列を使用して他の一般的な操作を実行する方法について説明します。
R で str_replace を使用する方法
Rで部分文字列マッチングを実行する方法
R で文字列を日付に変換する方法
Rで文字を数値に変換する方法