R で str_match を使用する方法 (例あり)
R のstringrパッケージのstr_match()関数を使用して、文字列から一致するグループを抽出できます。
この関数は次の構文を使用します。
str_match(文字列, パターン)
金:
- string:文字ベクトル
- モデル:検索するモデル
次の例は、この関数を実際に使用する方法を示しています。
例 1: Vector で str_match を使用する
次のコードは、 str_match()関数を使用して文字ベクトルから一致するパターンを抽出する方法を示しています。
library (stringr) #create vector of strings x <- c('Mavs', 'Cavs', 'Heat', 'Thunder', 'Blazers') #extract strings that contain 'avs' str_match(x, pattern=' avs ') [,1] [1,] “avs” [2,] “avs” [3,] NA [4,] NA [5,] NA
結果は、各行に一致するパターン、またはパターンが見つからなかった場合はNA値を表示する行列になります。
例えば:
- 最初の要素「Mavs」でパターン「avs」が見つかったので、「avs」が返されました。
- パターン「avs」が 2 番目の要素「Cavs」で見つかったので、「avs」が返されました。
- パターン「avs」が 3 番目の要素「Heat」に見つからなかったため、NA が返されました。
等々。
例 2: データ フレームで str_match を使用する
R に次のデータ フレームがあるとします。
#create data frame
df <- data. frame (team=c('Mavs', 'Cavs', 'Heat', 'Thunder', 'Blazers'),
points=c(99, 104, 110, 103, 115))
#view data frame
df
team points
1 Mavs 99
2 Cavs 104
3 Heat 110
4 Thunder 103
5 Blazers 115
次のコードは、 str_match()関数を使用して、各チーム名の一致パターンが含まれる場合と含まれない場合がある新しい列をデータ フレームに追加する方法を示しています。
library (stringr)
#create new column
df$match <- str_match(df$team, pattern=' avs ')
#view updated data frame
df
team points match
1 Mavs 99 avs
2 Cavs 104 avs
3 Heat 110 <NA>
4 Thunder 103 <NA>
5 Blazers 115 <NA>
matchというラベルの新しい列には、テンプレートがチーム列にあるかどうかに応じて、「avs」または NA テンプレートが含まれます。
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。
R で str_replace を使用する方法
R で str_split を使用する方法
R で str_detect を使用する方法
R で str_count を使用する方法
R で str_pad を使用する方法