Comment trier un bloc de données par colonne dans R (avec exemples)
Le moyen le plus simple de trier un bloc de données par colonne dans R est d’utiliser la fonction order() :
#sort ascending df[order(df$var1), ] #sort descending df[order(-df$var1), ]
Ce didacticiel fournit plusieurs exemples d’utilisation pratique de cette fonction avec le bloc de données suivant :
#create data frame df <- data.frame(var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=letters[1:5]) #view data frame df var1 var2 var3 1 1 7 a 2 3 7 b 3 3 8 c 4 4 3 d 5 5 2 e
Exemple 1 : trier par une colonne
Le code suivant montre comment trier le bloc de données par colonne var1 , à la fois de manière ascendante et décroissante :
#sort by var1 ascending df[order(df$var1), ] var1 var2 var3 1 1 7 a 2 3 7 b 3 3 8 c 4 4 3 d 5 5 2 e #sort by var1 descending df[order(-df$var1), ] var1 var2 var3 5 5 2 e 4 4 3 d 2 3 7 b 3 3 8 c 1 1 7 a
Notez que nous pouvons également trier par vecteur de caractères par ordre alphabétique :
#sort by var3 ascending df[order(df$var3), ] var1 var2 var3 1 1 7 a 2 3 7 b 3 3 8 c 4 4 3 d 5 5 2 e
Exemple 2 : Trier sur plusieurs colonnes
Le code suivant montre comment trier le bloc de données sur plusieurs colonnes :
#sort by var2 ascending, then var1 ascending df[order(df$var2, df$var1), ] var1 var2 var3 5 5 2 e 4 4 3 d 1 1 7 a 2 3 7 b 3 3 8 c #sort by var2 ascending, then var1 descending df[order(df$var2, -df$var1), ] var1 var2 var3 5 5 2 e 4 4 3 d 2 3 7 b 1 1 7 a 3 3 8 c
Ressources additionnelles
Comment ajouter une colonne à un bloc de données dans R
Comment trier une trame de données par date dans R
Comment convertir un caractère en numérique dans R