Как использовать str_replace в R (с примерами)


Функцию str_replace() из пакета stringr в R можно использовать для замены совпадающих шаблонов в строке. Эта функция использует следующий синтаксис:

str_replace(строка, шаблон, замена)

куда:

  • строка: вектор символов
  • шаблон: шаблон для поиска
  • замена: вектор символов замен

В этом руководстве представлено несколько примеров практического использования этой функции для следующего фрейма данных:

#create data frame
df <- data.frame(team=c('team_A', 'team_B', 'team_C', 'team_D'),
 conference=c('West', 'West', 'East', 'East'),
 points=c(88, 97, 94, 104))

#view data frame
df

 team conference points
1 team_A West 88
2 team_B West 97
3 team_C East 94
4 team_D East 104

Пример 1: заменить строку шаблоном

В следующем коде показано, как заменить строку «Запад» на «Запад» в столбце конференции:

library (stringr)

#replace "West" with "Western" in the conference column
df$conference <- str_replace(df$conference, " West", " Western ")

#view data frame
df

 team conference points
1 team_A Western 88
2 team_B Western 97
3 team_C East 94
4 team_D East 104

Пример 2: заменить строку ничем

Следующий код показывает, как заменить строку «team_» ничем в столбце team:

#replace "team_" with nothing in the team column
df$team<- str_replace(df$team, " team_", "")

#view data frame
df

 team conference points
1 A West 88
2 B West 97
3 C East 94
4 D East 104

Пример 3: заменить несколько строк

В следующем коде показано, как заменить несколько строк в одном столбце. Конкретно:

  • Замените «Запад» на «W».
  • Замените «Восток» на «Е».

Поскольку мы заменяем несколько строк, мы используем функцию str_replace_all() :

#replace multiple words in the conference column
df$conference <- str_replace_all(df$conference, c(" West " = " W", " East " = " E "))

#view data frame
df

 team conference points
1 team_A W 88
2 team_B W 97
3 team_C E 94
4 team_D E 104

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как выполнить частичное сопоставление строк в R
Как преобразовать строки в даты в R
Как преобразовать символ в число в R