Hoe u afzonderlijke rijen in een dataframe selecteert in r
U kunt de volgende methoden gebruiken om afzonderlijke rijen in een gegevensframe in R te selecteren:
Methode 1: Selecteer enkele rijen in alle kolommen
library (dplyr)
df %>% distinct()
Methode 2: Selecteer enkele rijen op basis van een kolom
library (dplyr)
df %>% distinct(column1, . keep_all = TRUE )
Methode 3: Selecteer enkele rijen op basis van meerdere kolommen
library (dplyr)
df %>% distinct(column1, column2, . keep_all = TRUE )
In deze tutorial wordt uitgelegd hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'),
points=c(10, 10, 8, 14, 15, 15, 17, 17))
#view data frame
df
team position points
1 AG 10
2 AG 10
3AF 8
4 AF 14
5 BG 15
6 BG 15
7 BF 17
8 BF 17
Voorbeeld 1: Selecteer unieke rijen in alle kolommen
De volgende code laat zien hoe u rijen met unieke waarden in alle kolommen in het dataframe selecteert:
library (dplyr)
#select rows with unique values across all columns
df %>% distinct()
team position points
1 AG 10
2AF 8
3 AF 14
4 BG 15
5 BF 17
We kunnen zien dat er vijf unieke rijen in het dataframe zijn.
Opmerking : wanneer dubbele rijen worden aangetroffen, wordt alleen de eerste unieke rij behouden.
Voorbeeld 2: Selecteer enkele rijen op basis van een kolom
De volgende code laat zien hoe u afzonderlijke rijen selecteert op basis van alleen de teamkolom .
library (dplyr)
#select rows with unique values based on team column only
df %>% distinct(team, . keep_all = TRUE )
team position points
1 AG 10
2 BG 15
Omdat er slechts twee unieke waarden in de kolom Team staan, worden alleen de rijen behouden waarin elke waarde voor het eerst voorkomt.
Opmerking : het argument .keep_all=TRUE vertelt R dat alle andere kolommen in de uitvoer moeten blijven staan.
Voorbeeld 3: Selecteer enkele rijen op basis van meerdere kolommen
De volgende code laat zien hoe u afzonderlijke rijen selecteert op basis van alleen de team- en positiekolommen .
library (dplyr)
#select rows with unique values based on team and position columns only
df %>% distinct(team, position, . keep_all = TRUE )
team position points
1 AG 10
2AF 8
3 BG 15
4 BF 17
Er worden vier rijen geretourneerd omdat er vier unieke combinaties van waarden zijn in de kolommen Team en Positie .
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:
Hoe unieke waarden te filteren met dplyr
Hoe u op meerdere voorwaarden kunt filteren met behulp van dplyr
Hoe het aantal exemplaren in kolommen in R te tellen