Як транспонувати кадр даних за допомогою dplyr
Ви можете використовувати наступний базовий синтаксис для транспонування кадру даних за допомогою пакета dplyr у R:
library (dplyr) library (tidyr) df %>% pivot_wider(names_from = column1, values_from = column2)
Аргумент Names_from визначає значення для імен стовпців у транспонованому фреймі даних, а аргумент Values_from визначає значення клітинок, які слід використовувати у транспонованому фреймі даних.
Зауважте, що оператор каналу ( %>% ) походить із пакета dplyr , а функція pivot_wider() — із пакету Tidyr .
У наступному прикладі показано, як використовувати цей синтаксис на практиці.
Приклад: транспонування фрейму даних за допомогою dplyr
Припустимо, що ми маємо наступний кадр даних у R, який містить інформацію про різні баскетбольні команди:
#create data frame df <- data. frame (team=c('Mavs', 'Nets', 'Kings', 'Lakers'), dots=c(99, 104, 119, 113)) #view data frame df team points 1 Mavs 99 2 Nets 104 3 Kings 119 4 Lakers 113
Тепер припустімо, що ми хочемо транспонувати фрейм даних так, щоб імена команд використовувалися як імена стовпців, а значення точок використовувалися як значення клітинок у фреймі даних.
Для цього ми можемо використати такий синтаксис:
library (dplyr) library (tidyr) #transpose data frame df %>% pivot_wider(names_from = team, values_from = points) # A tibble: 1 x 4 Mavs Nets Kings Lakers 1 99 104 119 113
Фрейм даних транспоновано таким чином, що імена команд використовуються як стовпці, а значення балів використовуються як значення клітинок у фреймі даних.
Зверніть увагу, що отриманий кадр даних тепер містить 1 рядок і 4 стовпці.
Пов’язане: знайомство з функцією pivot_wider() у R
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання за допомогою dplyr:
Як фільтрувати рядки, що містять певний рядок, за допомогою dplyr
Як обчислити відносні частоти за допомогою dplyr
Як вибрати перший рядок групою за допомогою dplyr