R: extraheer de subtekenreeks vanaf het einde van de tekenreeks


U kunt de volgende methoden gebruiken om een subtekenreeks in R te extraheren, beginnend vanaf het einde van de tekenreeks:

Methode 1: Gebruik 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 )

Methode 2: Gebruik het stringr-pakket

 library (stringr)

#extract 3 characters starting from end 
str_sub(my_string, start = - 3 )

Deze twee voorbeelden extraheren de laatste drie tekens uit de string genaamd my_string .

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe:

 #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

Voorbeeld 1: Extraheer de subtekenreeks van het einde met Base R

De volgende code laat zien hoe u een aangepaste functie in basis R definieert en vervolgens de functie gebruikt om de laatste drie tekens uit elke tekenreeks in de teamkolom te extraheren:

 #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

Houd er rekening mee dat de nieuwe kolom met de naam team_last3 de laatste drie tekens van elke tekenreeks in de teamkolom van het dataframe bevat.

Voorbeeld 2: Extraheer een subtekenreeks van het einde met behulp van het stringr-pakket

De volgende code laat zien hoe u de functie str_sub() uit het stringr- pakket in R kunt gebruiken om de laatste drie tekens uit elke tekenreeks in de teamkolom te extraheren:

 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

Houd er rekening mee dat de nieuwe kolom met de naam team_last3 de laatste drie tekens van elke tekenreeks in de teamkolom van het dataframe bevat.

Dit komt overeen met de resultaten van de vorige methode met behulp van de R-basis.

Gerelateerd : een inleiding tot de str_sub-functie in R

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:

Hoe u kolommen selecteert die een specifieke tekenreeks bevatten in R
Hoe tekens uit een string in R te verwijderen
Hoe de tekenlocatie in een string in R te vinden

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert