Как использовать pivot_wider() в r


Функция Pivot_wider() пакета Tidyr в R может использоваться для поворота блока данных из длинного формата в широкий.

Эта функция использует следующий базовый синтаксис:

 library (tidyr)

df %>% pivot_wider(names_from = var1, values_from = var2)

Золото:

  • names_from : столбец, значения которого будут использоваться в качестве имен столбцов.
  • values_from : столбец, значения которого будут использоваться в качестве значений ячеек.

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

Связанный: Длинные или широкие данные: в чем разница?

Пример: используйте Pivot_wider() в R

Предположим, у нас есть следующий кадр данных в R, содержащий информацию о различных баскетболистах:

 #create data frame
df <- data. frame (player=rep(c('A', 'B'), each= 4 ),
                 year=rep(c(1, 1, 2, 2), times= 2 ),
                 stat=rep(c('points', 'assists'), times= 4 ),
                 amount=c(14, 6, 18, 7, 22, 9, 38, 4))

#view data frame
df

  player year stat amount
1 A 1 points 14
2 A 1 assists 6
3 A 2 points 18
4 A 2 assists 7
5 B 1 points 22
6 B 1 assists 9
7 B 2 points 38
8 B 2 assists 4

Мы можем использовать функцию Pivot_wider() , чтобы повернуть этот фрейм данных в широкий формат:

 library (tidyr)

#pivot the data frame into a wide format
df %>% pivot_wider(names_from = stat, values_from = amount)

# A tibble: 4 x 4
  player year points assists
         
1 A 1 14 6
2 A 2 18 7
3 B 1 22 9
4 B 2 38 4

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

Конечным результатом является большой блок данных.

Примечание . Полную документацию по функции Pivot_wider() можно найти здесь .

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

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

Как использовать функцию Spread в R
Как использовать функцию сбора в R
Как использовать отдельную функцию в R
Как использовать функцию Unite в R

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

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