Comment trier une table dans R (avec exemples)
Il existe deux méthodes que vous pouvez utiliser pour trier une table dans R :
Méthode 1 : utiliser Base R
#sort table in ascending order my_table_sorted <- my_table[order(my_table)] #sort table in descending order my_table_sorted <- my_table[order(my_table, decreasing=TRUE)]
Méthode 2 : utiliser dplyr
library(dplyr) #sort table in ascending order my_table_sorted<- my_table %>% as.data.frame() %>% arrange(Freq) #sort table in descending order my_table_sorted<- my_table %>% as.data.frame() %>% arrange(desc(Freq))
Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le tableau suivant dans R :
#create vector
data <- c(3, 8, 8, 8, 7, 7, 5, 5, 5, 5, 9, 12, 15, 15)
#create table
my_table <- table(data)
#view table
my_table
data
3 5 7 8 9 12 15
1 4 2 3 1 1 2
Exemple 1 : Trier la table à l’aide de Base R
Nous pouvons utiliser le code suivant pour trier les valeurs du tableau par ordre croissant à l’aide de la fonction order() de la base R :
#sort table in ascending order
my_table_sorted <- my_table[order(my_table)]
#view sorted table
my_table_sorted
data
3 9 12 7 15 8 5
1 1 1 2 2 3 4
Et nous pouvons utiliser l’argument décroissant=True dans la fonction order() pour trier les valeurs du tableau par ordre décroissant :
#sort table in descending order
my_table_sorted <- my_table[order(my_table, decreasing=TRUE)]
#view sorted table
my_table_sorted
data
5 8 7 15 3 9 12
4 3 2 2 1 1 1
Exemple 2 : trier la table à l’aide de dplyr
Nous pouvons utiliser le code suivant pour trier les valeurs du tableau par ordre croissant à l’aide de la fonction arrange() du package dplyr :
library(dplyr)
#sort table in ascending order
my_table_sorted <- my_table %>% as.data.frame() %>% arrange(Freq)
#view sorted table
my_table_sorted
data Freq
1 3 1
2 9 1
3 12 1
4 7 2
5 15 2
6 8 3
7 5 4
Et nous pouvons utiliser la fonction desc() pour trier les valeurs du tableau par ordre décroissant :
library(dplyr)
#sort table in descending order
my_table_sorted <- my_table %>% as.data.frame() %>% arrange(desc(Freq))
#view sorted table
my_table_sorted
data Freq
1 5 4
2 8 3
3 7 2
4 15 2
5 3 1
6 9 1
7 12 1
Remarque : Vous pouvez trouver la documentation complète de la fonction dplyr arrange() ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :
Comment créer un tableau de fréquence par groupe dans R
Comment créer une table à deux voies dans R
Comment tracer une table dans R