R: wyodrębnij podciąg z końca łańcucha


Możesz użyć następujących metod, aby wyodrębnić podciąg w R, zaczynając od końca łańcucha:

Metoda 1: Użyj podstawy 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 )

Metoda 2: Użyj pakietu stringr

 library (stringr)

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

Te dwa przykłady wyodrębniają trzy ostatnie znaki z ciągu o nazwie my_string .

Poniższe przykłady pokazują, jak w praktyce zastosować każdą metodę z następującą ramką danych:

 #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

Przykład 1: Wyodrębnij podciąg z końca, używając podstawy R

Poniższy kod pokazuje, jak zdefiniować funkcję niestandardową w bazie R, a następnie użyć tej funkcji do wyodrębnienia trzech ostatnich znaków z każdego ciągu w kolumnie zespołu :

 #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

Należy zauważyć, że nowa kolumna o nazwie team_last3 zawiera trzy ostatnie znaki każdego ciągu w kolumnie Team ramki danych.

Przykład 2: Wyodrębnij podciąg z końca za pomocą pakietu stringr

Poniższy kod pokazuje, jak użyć funkcji str_sub() z pakietu stringr w R, aby wyodrębnić trzy ostatnie znaki z każdego ciągu w kolumnie zespołu :

 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

Należy zauważyć, że nowa kolumna o nazwie team_last3 zawiera trzy ostatnie znaki każdego ciągu w kolumnie Team ramki danych.

Odpowiada to wynikom poprzedniej metody wykorzystującej bazę R.

Powiązane : Wprowadzenie do funkcji str_sub w R

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:

Jak wybrać kolumny zawierające określony ciąg w R
Jak usunąć znaki z ciągu w R
Jak znaleźć lokalizację znaku w ciągu w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *