Hoe str_match in r te gebruiken (met voorbeelden)
De functie str_match() van het stringr- pakket in R kan worden gebruikt om overeenkomende groepen uit een string te extraheren.
Deze functie gebruikt de volgende syntaxis:
str_match(tekenreeks, patroon)
Goud:
- tekenreeks: karaktervector
- model: model waarnaar gezocht wordt
De volgende voorbeelden laten zien hoe u deze functie in de praktijk kunt gebruiken
Voorbeeld 1: Gebruik str_match met Vector
De volgende code laat zien hoe u de functie str_match() gebruikt om overeenkomende patronen uit een tekenvector te extraheren:
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
Het resultaat is een matrix waarin elke rij het overeenkomende patroon of een NA- waarde weergeeft als het patroon niet is gevonden.
Bijvoorbeeld:
- Het patroon „avs“ werd gevonden in het eerste element „Mavs“, dus „avs“ werd geretourneerd.
- Het patroon „avs“ werd gevonden in het tweede element „Cavs“, dus „avs“ werd geretourneerd.
- Het patroon „avs“ werd niet gevonden in het derde element „Heat“, dus NA werd geretourneerd.
Enzovoort.
Voorbeeld 2: Gebruik str_match met Data Frame
Stel dat we het volgende dataframe in R hebben:
#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
De volgende code laat zien hoe u de functie str_match() gebruikt om een nieuwe kolom aan het dataframe toe te voegen die al dan niet een overeenkomend patroon voor elke teamnaam bevat:
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>
De nieuwe kolom met de naam match bevat de sjabloon ‚avs‘ of NA, afhankelijk van of de sjabloon wel of niet in de teamkolom staat.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:
Hoe str_replace te gebruiken in R
Hoe str_split te gebruiken in R
Hoe str_detect te gebruiken in R
Hoe str_count te gebruiken in R
Hoe str_pad te gebruiken in R