Как использовать str_split в r (с примерами)
Функция str_split() пакета stringr в R может использоваться для разделения строки на несколько частей. Эта функция использует следующий синтаксис:
str_split (строка, шаблон)
Золото:
- строка: вектор символов
- шаблон: шаблон, по которому можно разделить
Аналогично, функцию str_split_fixed() из пакета stringr можно использовать для разделения строки на фиксированное количество фрагментов. Эта функция использует следующий синтаксис:
str_split_fixed(строка, шаблон, n)
Золото:
- строка: вектор символов
- шаблон: шаблон, по которому можно разделить
- n: количество возвращаемых частей.
В этом руководстве представлены примеры использования каждой из этих функций в следующем фрейме данных:
#create data frame df <- data. frame (team=c('andy & bob', 'carl & doug', 'eric & frank'), dots=c(14, 17, 19)) #view data frame df team points 1 andy & bob 14 2 carl & doug 17 3 eric & frank 19
Пример 1. Разделение строки с помощью str_split()
Следующий код показывает, как разделить строку в столбце «команда» с помощью функции str_split() :
library (stringr) #split the string in the team column on " & " str_split(df$team, " & ") [[1]] [1] “andy” “bob” [[2]] [1] “carl” “doug” [[3]] [1] “eric” “frank”
Результатом является список из трех элементов, в которых показаны имена отдельных игроков каждой команды.
Пример 2. Разделение строки с помощью str_split_fixed()
Следующий код показывает, как разделить строку в столбце «команда» на две фиксированные части с помощью функции str_split_fixed() :
library (stringr)
#split the string in the team column on " & "
str_split_fixed(df$team, " & ", 2)
[,1] [,2]
[1,] “andy” “bob”
[2,] "carl" "doug"
[3,] "eric" "frank"
В результате получается матрица с двумя столбцами и тремя строками.
Полезное применение функции str_split_fixed() — добавить результирующую матрицу в конец фрейма данных. Например:
library (stringr)
#split the string in the team column and append resulting matrix to data frame
df[, 3:4] <- str_split_fixed(df$team, " & ", 2)
#view data frame
df
team points V3 V4
1 andy & bob 14 andy bob
2 carl & doug 17 carl doug
3 eric & frank 19 eric frank
В столбце с надписью «V3» отображается имя игрока первой команды, а в столбце с надписью «V4» отображается имя игрока второй команды.
Дополнительные ресурсы
Как использовать str_replace в R
Как выполнить частичное сопоставление строк в R
Как преобразовать строки в даты в R
Как преобразовать символ в число в R