Comment utiliser pivot_longer() dans R



La fonction pivot_longer() du package Tidyr dans R peut être utilisée pour faire pivoter un bloc de données d’un format large vers un format long.

Cette fonction utilise la syntaxe de base suivante :

library(tidyr)

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

où:

  • cols : Les noms des colonnes à pivoter
  • names_to : Le nom de la nouvelle colonne de caractères
  • values_to : Le nom de la nouvelle colonne de valeurs

L’exemple suivant montre comment utiliser cette fonction dans la pratique.

Connexes : Données longues ou larges : quelle est la différence ?

Exemple : utilisez pivot_longer() dans R

Supposons que nous ayons le bloc de données suivant dans R qui montre le nombre de points marqués par différents joueurs de basket-ball au cours de différentes années :

#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      A    12    22
2      B    15    29
3      C    19    18
4      D    19    12

Nous pouvons utiliser la fonction pivot_longer() pour faire pivoter ce bloc de données dans un format long :

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

Notez que les noms de colonnes année1 et année2 sont désormais utilisés comme valeurs dans une nouvelle colonne appelée « année » et que les valeurs de ces colonnes d’origine sont placées dans une nouvelle colonne appelée « points ».

Le résultat final est une longue trame de données.

Remarque : Vous pouvez trouver la documentation complète de la fonction pivot_longer() ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment utiliser d’autres fonctions courantes du package Tidyr dans R :

Comment utiliser pivot_wider() dans R
Comment utiliser la fonction Spread dans R
Comment utiliser la fonction de collecte dans R
Comment utiliser une fonction séparée dans R
Comment utiliser la fonction Unite dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *