Comment réorganiser les colonnes dans R
Souvent, vous souhaiterez peut-être réorganiser les colonnes dans un bloc de données dans R.
Heureusement, cela est facile à faire en utilisant la fonction select() du package dplyr .
library(dplyr)
Ce didacticiel montre plusieurs exemples d’utilisation pratique de cette fonction à l’aide du bloc de données suivant :
#create data frame df <- data.frame(player = c('a', 'b', 'c', 'd', 'e'), position = c('G', 'F', 'F', 'G', 'G'), points = c(12, 15, 19, 22, 32), rebounds = c(5, 7, 7, 12, 11)) #view data frame df player position points rebounds 1 a G 12 5 2 b F 15 7 3 c F 19 7 4 d G 22 12 5 e G 32 11
Exemple 1 : déplacer une colonne vers la première position
Le code suivant montre comment déplacer une colonne spécifique dans un bloc de données vers la première position :
#move column 'points' to first position df %>% select(points, everything()) points player position rebounds 1 12 a G 5 2 15 b F 7 3 19 c F 7 4 22 d G 12 5 32 e G 11
Ce code indique à dplyr de sélectionner d’abord la colonne de points, puis d’inclure toutes les autres colonnes après les points.
Exemple 2 : déplacer une colonne vers la dernière position
Le code suivant montre comment déplacer une colonne spécifique dans un bloc de données vers la dernière position :
#move column 'points' to last position
df %>% select(-points, points)
player position rebounds points
1 a G 5 12
2 b F 7 15
3 c F 7 19
4 d G 12 22
5 e G 11 32
Ce code indique à dplyr de sélectionner toutes les colonnes sauf la colonne de points, puis de sélectionner à nouveau la colonne de points. Cela a pour effet de déplacer la colonne de points vers la dernière position du bloc de données.
Exemple 3 : Réorganiser plusieurs colonnes
Le code suivant montre comment réorganiser plusieurs colonnes à la fois dans un ordre spécifique :
#change all column names to uppercase
df %>% select(rebounds, position, points, player)
rebounds position points player
1 5 G 12 a
2 7 F 15 b
3 7 F 19 c
4 12 G 22 d
5 11 G 32 e
Exemple 4 : Réorganiser les colonnes par ordre alphabétique
Le code suivant montre comment classer les colonnes par ordre alphabétique :
#order columns alphabetically
df %>% select(order(colnames(.)))
player points position rebounds
1 a 12 G 5
2 b 15 F 7
3 c 19 F 7
4 d 22 G 12
5 e 32 G 11
Exemple 5 : Ordre inverse des colonnes
Le code suivant montre comment inverser l’ordre des colonnes dans un bloc de données :
#reverse column order df %>% select(rebounds:player, everything()) rebounds points position player 1 5 12 G a 2 7 15 F b 3 7 19 F c 4 12 22 G d 5 11 32 G e
Remarque : Vous pouvez trouver la documentation complète de la fonction select() ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans dplyr :
Comment sélectionner des colonnes par index à l’aide de dplyr
Comment sélectionner des colonnes par nom à l’aide de dplyr
Comment ajouter des colonnes au bloc de données à l’aide de dplyr