Rijen verwijderen met dplyr (met voorbeelden)
U kunt de volgende basissyntaxis gebruiken om rijen uit een dataframe in R te verwijderen met behulp van dplyr:
1. Verwijder een rij met NA
df %>%
n / A. omit ()
2. Verwijder een rij met NA in een specifieke kolom
df %>% filter( ! is. na (column_name))
3. Verwijder duplicaten
df %>%
distinct()
4. Verwijder rijen op indexpositie
df %>% filter( ! row_number() %in% c(1, 2, 4))
5. Verwijder rijen op basis van voorwaarde
df %>%
filter(column1 == ' A ' | column2 > 8)
De volgende voorbeelden laten zien hoe u elk van deze methoden in de praktijk kunt gebruiken met het volgende dataframe:
library (dplyr)
#create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C', 'C'),
points=c(4, NA, 7, 5, 9, 9),
assists=c(1, 3, 5, NA, 2, 2))
#view data frame
df
team points assists
1 to 4 1
2 A NA 3
3 B 7 5
4 B 5 NA
5 C 9 2
6 C 9 2
Voorbeeld 1: Verwijder een rij met NA
De volgende code laat zien hoe u rijen met NA-waarden uit het dataframe kunt verwijderen:
#remove any row with NA df %>% n / A. omit () team points assists 1 to 4 1 3 B 7 5 5 C 9 2 6 C 9 2
Voorbeeld 2: Verwijder elke rij met NA in specifieke kolommen
De volgende code laat zien hoe u elke rij met NA-waarden in een specifieke kolom kunt verwijderen:
#remove any row with NA in 'points' column: df %>% filter( ! is. na (dots)) team points assists 1 to 4 1 2 B 7 5 3 B 5 NA 4 C 9 2 5 C 9 2
Voorbeeld 3: Dubbele rijen verwijderen
De volgende code laat zien hoe u dubbele rijen verwijdert:
#remove duplicate rows
df %>%
distinct()
team points assists
1 to 4 1
2 A NA 3
3 B 7 5
4 B 5 NA
5 C 9 2
Voorbeeld 4: Rijen verwijderen op indexpositie
De volgende code laat zien hoe u rijen verwijdert op basis van de indexpositie:
#remove rows 1, 2, and 4 df %>% filter( ! row_number() %in% c(1, 2, 4)) team points assists 1 B 7 5 2 C 9 2 3 C 9 2
Voorbeeld 5: Rijen verwijderen op basis van voorwaarde
De volgende code laat zien hoe u rijen verwijdert op basis van specifieke voorwaarden:
#only keep rows where team is equal to 'A' or points is greater than 8 df %>% filter(column1 == ' A ' | column2 > 8) team points assists 1 to 4 1 2 A NA 3 3 C 9 2 4 C 9 2
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende functies in dplyr kunt uitvoeren:
Kolommen selecteren op index met behulp van dplyr
Variabelen sorteren op groep met dplyr
Hoe NA te vervangen door Zero in dplyr