R : Comment trouver des valeurs uniques et les trier
Vous pouvez utiliser les méthodes suivantes pour rechercher des valeurs uniques, puis les trier dans R :
Méthode 1 : trouver des valeurs uniques dans un vecteur et les trier
#get unique values sorted in ascending order
sort(unique(data))
Méthode 2 : rechercher des lignes uniques dans le bloc de données et les trier
#remove duplicate rows in data frame
df_new = df[!duplicated(df), ]
#display unique rows sorted by values in specific column
df_new = df_new[order(df_new$my_column), ]
Les exemples suivants montrent comment utiliser chaque méthode dans la pratique.
Exemple 1 : trouver des valeurs uniques dans un vecteur et les trier
Supposons que nous ayons le vecteur suivant dans R :
#create vector of values
data <- c(2, 2, 4, 7, 2, 4, 14, 7, 10, 7)
Nous pouvons utiliser la syntaxe suivante pour trouver les valeurs uniques dans le vecteur et les trier :
#get unique values sorted in ascending order
sort(unique(data))
[1] 2 4 7 10 14
Notez que les valeurs uniques du vecteur sont renvoyées par ordre croissant.
Nous pouvons également utiliser l’argument décroissant=TRUE pour trier les valeurs uniques par ordre décroissant :
#get unique values sorted in descending order
sort(unique(data), decreasing=TRUE)
[1] 14 10 7 4 2
Notez que les valeurs uniques du vecteur sont renvoyées par ordre décroissant.
Exemple 2 : rechercher des valeurs uniques dans le bloc de données et les trier
Supposons que nous ayons le bloc de données suivant dans R :
#create data frame
df <- data.frame(team=c('A', 'B', 'A', 'A', 'A', 'B', 'B', 'B', 'A', 'B'),
points=c(2, 10, 7, 7, 2, 4, 14, 7, 2, 7))
#view data frame
df
team points
1 A 2
2 B 10
3 A 7
4 A 7
5 A 2
6 B 4
7 B 14
8 B 7
9 A 2
10 B 7
Nous pouvons utiliser la syntaxe suivante pour rechercher les lignes uniques dans le bloc de données et les trier en fonction des valeurs de la colonne d’équipe :
#remove duplicate rows in data frame
df_new = df[!duplicated(df), ]
#sort unique rows based on values in team column
df_new = df_new[order(df_new$team, df_new$points), ]
#view new data frame
df_new
team points
1 A 2
3 A 7
2 B 4
6 B 7
7 B 10
8 B 14
Notez que les lignes uniques sont renvoyées et triées en fonction des valeurs de la colonne équipe , puis des valeurs de la colonne points .
Comment utiliser sort(), order() et Rank() dans R
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans R :
Comment compter les valeurs uniques dans une colonne dans R
Comment sélectionner des lignes uniques dans un bloc de données dans R
Comment trouver toutes les combinaisons uniques de deux vecteurs dans R