Как объединить два столбца в один в r (с примерами)
Часто вам может потребоваться объединить два столбца в один в R. Например, предположим, что у вас есть фрейм данных с тремя столбцами:
month year value 10 2019 15 10 2020 13 11 2020 13 11 2021 19 12 2021 22
Возможно, вы захотите объединить столбцы месяца и года в один столбец с именем date :
date value 2019_10 15 2020_10 13 2020_11 13 2021_11 19 2021_12 22
В этом руководстве объясняются два способа быстро сделать это в R.
Способ 1. Используйте функцию «Вставить» из Base R.
Следующий код показывает, как использовать функцию вставки базы данных R для объединения столбцов месяца и года в один столбец с именем date :
#create data frame data <- data.frame(month=c(10, 10, 11, 11, 12), year=c(2019, 2020, 2020, 2021, 2021), value=c(15, 13, 13, 19, 22)) #view data frame data #combine year and month into one column data$date <- paste (data$year, data$month, sep=" _ ") #view new data frame data month year value date 1 10 2019 15 2019_10 2 10 2020 13 2020_10 3 11 2020 13 2020_11 4 11 2021 19 2021_11 5 12 2021 22 2021_12
После того, как мы объединили два столбца, мы можем удалить старые, если захотим:
data_new <- data[c(" date ", " value ")] data_new date value 1 2019_10 15 2 2020_10 13 3 2020_11 13 4 2021_11 19 5 2021_12 22
Способ 2. Используйте функцию Unite в Tidyr.
Следующий код показывает, как использовать функцию unit в пакете tiydr для объединения столбцов месяца и года в один столбец с именем date :
#load tidyr package library(tidyr) #create data frame data <- data.frame(month=c(10, 10, 11, 11, 12), year=c(2019, 2020, 2020, 2021, 2021), value=c(15, 13, 13, 19, 22)) #combine year and month into one column unit (data, date, c(year, month)) date value 1 2019_10 15 2 2020_10 13 3 2020_11 13 4 2021_11 19 5 2021_12 22
Обратите внимание, что оба метода дают одинаковые результаты.
Полную документацию по функциям модуля вы можете найти здесь .