Sorteren op meerdere kolommen in r (met voorbeelden)
U kunt een van de volgende methoden gebruiken om een gegevensframe over meerdere kolommen in R te sorteren:
Methode 1: Gebruik Base R
df[order(-df$column1, df$column2), ]
Methode 2: gebruik dplyr
library (dplyr) df %>% arrange( desc (column1), column2)
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe:
#create data frame df <- data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F', 'G'), points=c(90, 90, 93, 91, 91, 99, 85), assists=c(33, 28, 31, 39, 34, 40, 44)) #view data frame df team points assists 1 A 90 33 2 B 90 28 3 C 93 31 4 D 91 39 5 E 91 34 6 F 99 40 7 G 85 44
Methode 1: Gebruik Base R
De volgende code laat zien hoe het op R gebaseerde gegevensblok moet worden gesorteerd door punten af te lopen (van groot naar klein) en vervolgens door oplopende assists :
#sort by points descending, then by assists ascending
df[order(-df$points, df$assists), ]
team points assists
6 F 99 40
3 C 93 31
5 E 91 34
4 D 91 39
2 B 90 28
1 A 90 33
7 G 85 44
Merk op dat de rijen in het dataframe zijn geordend op punten van groot naar klein, en vervolgens op assists van klein naar groot.
Methode 2: gebruik dplyr
De volgende code laat zien hoe u functies in het dplyr- pakket kunt gebruiken om het dataframe te sorteren op aflopende punten (van groot naar klein) en vervolgens op oplopende hulp :
library (dplyr)
df %>%
arrange( desc (dots), assists)
team points assists
1 F 99 40
2 C 93 31
3 E 91 34
4 D 91 39
5 B 90 28
6 A 90 33
7 G 85 44
Ook hier worden de rijen in het dataframe geordend op basis van punten van groot naar klein, en vervolgens op basis van assists van klein naar groot.
Opmerking : u kunt de volledige documentatie voor de functie arrange() hier vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende sorteerbewerkingen in R kunt uitvoeren:
Hoe waarden alfabetisch te sorteren in R
Hoe een dataframe op datum te sorteren in R