Как использоватьbind_rows иbind_cols в dplyr (с примерами)


Вы можете использовать функциюbind_rows () из пакета dplyr в R, чтобы связать два фрейма данных по их строкам:

 bind_rows(df1, df2, df3, ...)

Точно так же вы можете использовать функцию dplyr’sbind_cols () для привязки двух фреймов данных по их столбцам:

 bind_cols(df1, df2, df3, ...)

Следующие примеры показывают, как использовать каждую из этих функций на практике.

Пример 1. Использование функцииbind_rows().

Следующий код показывает, как использовать функциюbind_rows () для связывания трех фреймов данных на основе их строк:

 library (dplyr)

#create data frames
df1 <- data. frame (team=c('A', 'A', 'B', 'B'),
                  dots=c(12, 14, 19, 24))


df2 <- data. frame (team=c('A', 'B', 'C', 'C'),
                  dots=c(8, 17, 22, 25))

df3 <- data. frame (team=c('A', 'B', 'C', 'C'),
                  assists=c(4, 9, 12, 6))

#row bind together data frames
bind_rows(df1, df2, df3)

   team points assists
1 to 12 NA
2 A 14 NA
3 B 19 NA
4 B 24 NA
5 to 8 NA
6 B 17 NA
7 C 22 NA
8 C 25 NA
9 A NA 4
10 B NA 9
11 C NA 12
12 C NA 6

Обратите внимание, что эта функция автоматически заполняет пропущенные значения значением NA, если не все фреймы данных имеют одинаковые имена столбцов.

Пример 2. Использование функцииbind_cols().

Следующий код показывает, как использовать функциюbind_cols () для связывания трех фреймов данных вместе на основе их столбцов:

 library (dplyr)

#create data frames
df1 <- data. frame (team=c('A', 'A', 'B', 'B'),
                  dots=c(12, 14, 19, 24))


df2 <- data. frame (team=c('A', 'B', 'C', 'C'),
                  dots=c(8, 17, 22, 25))

df3 <- data. frame (team=c('A', 'B', 'C', 'C'),
                  assists=c(4, 9, 12, 6))

#column bind together data frames
bind_cols(df1, df2, df3)

  team points assists steals blocks rebounds
1 A 12 A 8 A 4
2 A 14 B 17 B 9
3 B 19 C 22 C 12
4 B 24 C 25 C 6

Обратите внимание, что исходные столбцы каждого фрейма данных появляются в конечном фрейме данных в том порядке, в котором мы указали их в функцииbind_cols() .

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

В следующих руководствах показано, как привязать фреймы данных с помощью функций rbind() и cbind() в R:

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *