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