Jak usunąć ostatni znak z ciągu w r (2 przykłady)


Aby usunąć ostatni znak z każdego ciągu wektora w R, możesz użyć następujących metod:

Metoda 1: Usuń ostatni znak za pomocą podstawy R

 substr(df$some_column, 1 , nchar(df$some_column)- 1 )

Metoda 2: Usuń ostatni znak za pomocą pakietu stringr

 library (stringr) 

str_sub(df$some_column, end = -2 )

Poniższe przykłady pokazują, jak używać każdej metody z następującą ramką danych w R:

 #create data frame
df <- data. frame (name=c('Andy', 'Bert', 'Chad', 'Derrick', 'Eric', 'Fred'),
                 sales=c(18, 22, 19, 14, 14, 11))

#view data frame
df

     name sales
1 Andy 18
2 Bert 22
3 Chad 19
4 Derrick 14
5 Eric 14
6 Fred 11

Przykład 1: Usuń ostatni znak za pomocą Base R

Poniższy kod pokazuje, jak usunąć ostatni znak z każdego ciągu w kolumnie nazwy ramki danych:

 #remove last character from each string in 'name' column
df$name = substr(df$name, 1 , nchar(df$name)- 1 )

#view updated data frame
df

    name sales
1 And 18
2 Ber 22
3 Cha 19
4 Derrick 14
5 Eri 14
6 Fre 11

Należy zwrócić uwagę, że ostatni znak każdego ciągu znaków w kolumnie nazwa został usunięty.

Przykład 2: Usuń ostatni znak za pomocą pakietu stringr

Poniższy kod pokazuje, jak usunąć ostatni znak każdego ciągu z kolumny nazwy ramki danych za pomocą funkcji str_sub() z pakietu stringr :

 library (stringr)

#remove last character from each string in 'name' column
df$name <- str_sub(df$name, end = -2 )

#view updated data frame
df

    name sales
1 And 18
2 Ber 22
3 Cha 19
4 Derrick 14
5 Eri 14
6 Fre 11

Należy zwrócić uwagę, że ostatni znak każdego ciągu znaków w kolumnie nazwa został usunięty.

Należy pamiętać, że ta metoda daje identyczne wyniki jak poprzednia metoda.

Jeśli jednak pracujesz z wyjątkowo dużym blokiem danych, funkcja str_sub() będzie prawdopodobnie szybsza niż podstawowa funkcja substr() języka R.

Dodatkowe zasoby

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

Jak przekodować wartości za pomocą dplyr
Jak zamienić NA na Zero w dplyr
Jak filtrować wiersze zawierające określony ciąg za pomocą dplyr

Dodaj komentarz

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