Як видалити останній символ із рядка в r (2 приклади)


Щоб видалити останній символ із кожного рядка у векторі в R, можна скористатися такими методами:

Спосіб 1: видаліть останній символ за допомогою Base R

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

Спосіб 2: видаліть останній символ за допомогою пакета stringr

 library (stringr) 

str_sub(df$some_column, end = -2 )

У наведених нижче прикладах показано, як використовувати кожен метод із таким кадром даних у 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

Приклад 1: видаліть останній символ за допомогою Base R

Наступний код показує, як видалити останній символ із кожного рядка в стовпці назви кадру даних:

 #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

Зауважте, що останній символ кожного рядка в стовпці імені видалено.

Приклад 2: видалення останнього символу за допомогою пакета stringr

Наступний код показує, як видалити останній символ кожного рядка в стовпці назви кадру даних за допомогою функції str_sub() із пакету 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

Зауважте, що останній символ кожного рядка в стовпці імені видалено.

Зауважте, що цей метод дає такі ж результати, як і попередній.

Однак, якщо ви працюєте з надзвичайно великим блоком даних, функція str_sub(), ймовірно, буде швидшою, ніж основна функція R substr() .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як перекодувати значення за допомогою dplyr
Як замінити NA на Zero в dplyr
Як фільтрувати рядки, що містять певний рядок, за допомогою dplyr

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *