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


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

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

 library (tidyr)

df %>% pivot_longer(cols=c(' var1 ', ' var2 ', ...),
                    names_to=' col1_name ',
                    values_to=' col2_name ')

Золото:

  • cols : имена столбцов для поворота.
  • names_to : имя нового символьного столбца.
  • values_to : имя столбца новых значений.

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

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

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

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

 #create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D'),
                 year1=c(12, 15, 19, 19),
                 year2=c(22, 29, 18, 12))

#view data frame
df

  player year1 year2
1 to 12 22
2 B 15 29
3 C 19 18
4 D 19 12

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

 library (tidyr)

#pivot the data frame into a long format
df %>% pivot_longer(cols=c(' year1 ', ' year2 '),
                    names_to=' year ',
                    values_to=' points ')

# A tibble: 8 x 3
  player year points
      
1 A year1 12
2 A year2 22
3 B year1 15
4 B year2 29
5 C year1 19
6 C year2 18
7 D year1 19
8 D year2 12

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

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

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

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

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

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

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

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