Функцию gsub() в R можно использовать для замены всех вхождений определенного текста в строке в R.
Эта функция использует следующий базовый синтаксис:
gsub(pattern, replacement, x)
куда:
- pattern : образец для поиска
- замена : замена шаблона
- x : строка для поиска
В следующих примерах показано, как использовать эту функцию на практике.
Пример 1: заменить текст в строке
Следующий код показывает, как заменить определенный фрагмент текста в строке:
#define string
x <- " This is a fun sentence "
#replace 'fun' with 'great'
x <- gsub('fun', 'great', x)
#view updated string
x
[1] "This is a great sentence"
Пример 2. Замена одиночной текстовой строки в векторе
Следующий код показывает, как заменить несколько вхождений текста в вектор:
#define vector
x <- c('Mavs', 'Mavs', 'Spurs', 'Nets', 'Spurs', 'Mavs')
#replace 'Mavs' with 'M'
x <- gsub('Mavs', 'M', x)
#view updated vector
x
[1] "M" "M" "Spurs" "Nets" "Spurs" "M"
Пример 3. Замена нескольких текстовых строк в векторе
В следующем коде показано, как заменить несколько вхождений двух разных текстовых строк в векторе:
#define vector
x <- c('A', 'A', 'B', 'C', 'D', 'D')
#replace 'A' or 'B' or 'C' with 'X'
x <- gsub('A|B|C', 'X', x)
#view updated string
x
[1] "X" "X" "X" "X" "D" "D"
Пример 4: Замена текста во фрейме данных
Следующий код показывает, как заменить текст во фрейме данных:
#define data frame
df <- data.frame(team=c('A', 'B', 'C', 'D'),
conf=c('West', 'West', 'East', 'East'),
points=c(99, 98, 92, 87),
rebounds=c(18, 22, 26, 19))
#view data frame
df
team conf points rebounds
1 A West 99 18
2 B West 98 22
3 C East 92 26
4 D East 87 19
#replace 'West' and 'East' with 'W' and 'E'
df$conf <- gsub('West', 'W', df$conf)
df$conf <- gsub('East', 'E', df$conf)
#view updated data frame
df
team conf points rebounds
1 A W 99 18
2 B W 98 22
3 C E 92 26
4 D E 87 19
Дополнительные ресурсы
Как использовать функцию diff в R
Как использовать функцию seq в R
Как использовать функцию diff в R
Как использовать табличную функцию в R