R : Comment utiliser pivot_wider() avec plusieurs colonnes



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

Si vous souhaitez utiliser cette fonction pour faire pivoter plusieurs colonnes, vous pouvez utiliser la syntaxe suivante :

library(tidyr)

df_wide <- pivot_wider(df, names_from=group, values_from=c(values1, values2))

En fournissant plusieurs noms de colonnes à l’argument values_from , vous pouvez faire pivoter plusieurs colonnes à la fois.

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_wider() avec plusieurs colonnes dans R

Supposons que nous ayons le bloc de données suivant dans R qui contient des informations sur divers joueurs de basket-ball :

#create data frame
df <- data.frame(team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 player=c('G', 'F', 'C', 'G', 'F', 'C'),
                 points=c(22, 34, 20, 15, 14, 19),
                 assists=c(4, 10, 12, 9, 8, 5))

#view data frame
df

  team player points assists
1    A      G     22       4
2    A      F     34      10
3    A      C     20      12
4    B      G     15       9
5    B      F     14       8
6    B      C     19       5

Supposons maintenant que nous souhaitions faire pivoter les valeurs dans les colonnes de points et d’assistance en même temps.

Nous pouvons utiliser la syntaxe suivante pour ce faire :

library(tidyr)

#pivot values in points and assists columns
df_wide <- pivot_wider(df, names_from=player, values_from=c(points, assists))

#view wide data frame
df_wide

# A tibble: 2 x 7
  team  points_G points_F points_C assists_G assists_F assists_C
                             
1 A           22       34       20         4        10        12
2 B           15       14       19         9         8         5

Notez que chaque valeur de la colonne des joueurs a été combinée avec les points et les passes décisives pour créer un total de six nouvelles colonnes affichant les points et les passes décisives marqués par les joueurs à chaque position.

Le résultat final est un large bloc de données avec un total de sept colonnes.

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

Ressources additionnelles

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

Comment utiliser pivot_longer() 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 *