Функция paste() в R: краткое руководство
Development | Комментировать запись
Функцию paste() в языке программирования R очень просто использовать. Давайте посмотрим в этом руководстве, как мы можем использовать paste() для объединения строк и значений.
Итак, функция paste() принимает несколько элементов из нескольких векторов и объединяет их в один элемент.
Рядом с функцией paste() в R есть еще одна функция, paste0(), которая выглядит очень похоже.
Функция paste0() использует пробел в качестве разделителя по умолчанию, а также ограничивает возможности вывода.
Синтаксис функции paste
Начнем с синтаксиса. Синтаксис функции paste() таков:
paste(x,sep=" ", collapse=NULL)
Где:
- x – вектор со значениями.
- sep – символы-разделители, которые можно использовать для отделения элементов друг от друга.
- collapse – необязательная строка символов, которые разделяют результаты.
Синтаксис функции paste0() таков:
paste(x,collapse=NULL)
Где:
- x – вектор со значениями.
- collapse – необязательная строка символов, которые разделяют результаты.
Как использовать функцию paste() в R?
Простая функция paste() будет принимать несколько элементов в качестве входных данных и объединять эти данные в одну строку. Элементы будут разделены пробелом (так делается по умолчанию). Но вы также можете изменить значение разделителя с помощью параметра «sep».
paste(1,'two',3,'four',5,'six')
В результате вы получите строку:
1 two 3 four 5 six
Функция paste() с аргументом separator
Параметр разделителя (sep, или separator) в функции paste() определяет значения или символы, которые используются для разделения элементов, принимаемых функцией paste() в качестве входных данных.
paste(1,'two',3,'four',5,'six',sep = "_")
Вы получите:
1_two_3_four_5_six
А если использовать следующее значение:
paste(1,'two',3,'four',5,'six',sep = "&")
То вы получите такой результат:
1&two&3&four&5&six
Функция paste() с аргументом collapse
Когда вы передаете аргумент вставки вектору, параметр sep не работает. Потому для таких ситуаций появляется параметр collapse, он очень полезен при работе с векторами. Он представляет символ или значения, которые разделяют элементы в векторе.
paste(c(1,2,3,4,5,6,7,8),collapse = "_")
Результат выглядит так:
1_2_3_4_5_6_7_8
Следующий пример:
paste(c('Rita','Sam','John','Jat','Cook','Reaper'),collapse = ' and ')
Вернет такой результат:
Rita and Sam and John and Jat and Cook and Reaper
Функция paste() с аргументами separator и collapse
Давайте посмотрим, как будут работать аргументы separator и collapse вместе. Аргумент separator будет иметь дело со значениями, которые должны быть помещены между набором элементов, а collapse будет использовать конкретное значение для объединения элементов в одну строку. Итак, посмотрим на такой пример:
paste(c('a','b'),1:10,sep = '_',collapse = ' and ')
который вернет следующий результат:
a_1 and b_2 and a_3 and b_4 and a_5 and b_6 and a_7 and b_8 and a_9 and b_1
Взгляните также на следующий пример:
paste(c('John','Ray'),1:5,sep = '=',collapse = ' and ')
Вы получите такой результат:
John=1 and Ray=2 and John=3 and Ray=4 and John=5
Функция paste0()
Функция paste0() работает так же, как paste(), но она использует разделитель по умолчанию. Давайте посмотрим на такой пример:
paste0('df',1:6)
Вывод:
“df1” “df2” “df3” “df4” “df5” “df6”
Как видите, функция paste0() имеет значение separator по умолчанию. Теперь давайте посмотрим, как функция paste0() работает с параметром collapse.
Функция paste0() с аргументом collapse
Аргумент collapse в функции paste0() — это символ или значение, используемое для разделения элементов.
Например:
paste0('df',1:5,collapse = '_')
вывод:
“df1_df2_df3_df4_df5”
Другой пример:
paste0('df',1:5,collapse = ' > ')
вернет такой результат:
“df1 > df2 > df3 > df4 > df5”
Как вы можете видеть в приведенных выше результатах, функция paste0() возвращает строку с разделителем по умолчанию и указанным аргументом collapse.
Как использовать функцию paste() во фрейме данных в R
Вы также можете использовать функцию paste() для вставки значений или элементов, присутствующих во фрейме данных.
Давайте посмотрим, как это работает с набором данных BOD.
datasets::BOD paste(BOD$Time,sep = ',',collapse = '_')
Результат будет выглядеть так:
“1_2_3_4_5_7”
Этот пример:
datasets::BOD paste(BOD$demand,sep = ',',collapse = '_')
вернет такой результат:
“8.3_10.3_19_16_15.6_19.8”
Заключение
R предлагает множество функций, которые сделают ваш анализ более простым и эффективным. Среди них функция paste(), которая очень полезна для объединения строк и элементов в одну строку.
В этом мануале мы рассмотрели различные аспекты функций paste() и paste0(). Обе эти функции будут действительно полезны при анализе данных.
Читайте также:
Tags: R