A: rijen filteren waarbij de kolom zich tussen twee waarden bevindt
U kunt de volgende methoden gebruiken om een gegevensframe in R te filteren waarbij een specifieke kolom zich tussen twee waarden bevindt:
Methode 1: Gebruik Base R
df_new <- subset(df, points %in% 100 : 120 )
Methode 2: gebruik dplyr
library (dplyr) df_new <- df %>% filter(between(points, 100 , 120 ))
Beide voorbeelden filteren een dataframe zodat het alleen rijen bevat waarvan de waarde in de kolom Punten tussen 100 en 120 ligt.
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe in R:
#create data frame
df <- data. frame (team=c('Mavs', 'Pacers', 'Mavs', 'Celtics', 'Nets', 'Pacers'),
points=c(104, 110, 134, 125, 114, 124),
assists=c(22, 30, 35, 35, 20, 27))
#view data frame
df
team points assists
1 Mavs 104 22
2 Pacers 110 30
3 Mavs 134 35
4 Celtics 125 35
5 Nets 114 20
6 Pacers 124 27
Voorbeeld 1: Filter waarbij de kolom zich tussen twee waarden bevindt met behulp van Base R
We kunnen de volgende syntaxis gebruiken met de functie R base subset() om het dataframe te filteren zodat het alleen rijen bevat waarvan de waarde in de puntenkolom tussen 100 en 120 ligt:
#filter for rows where value in points column is between 100 and 120 df_new <- subset(df, points %in% 100 : 120 ) #view updated data frame df_new team points assists 1 Mavs 104 22 2 Pacers 110 30 3 Nets 114 20
Houd er rekening mee dat alleen rijen waarvan de waarde in de puntenkolom tussen 100 en 120 ligt, behouden blijven.
Alle andere rijen waarvan de waarde buiten dit bereik ligt, worden verwijderd.
Voorbeeld 2: Filter waar de kolom zich tussen twee waarden bevindt met behulp van dplyr
We kunnen de volgende syntaxis gebruiken met de functies filter() en between() van het dplyr-pakket in R om het dataframe te filteren zodat het alleen rijen bevat waarvan de waarde in de puntenkolom tussen 100 en 120 ligt:
library (dplyr) #filter for rows where value in points column is between 100 and 120 df_new <- df %>% filter(between(points, 100 , 120 )) #view updated data frame df_new team points assists 1 Mavs 104 22 2 Pacers 110 30 3 Nets 114 20
Houd er rekening mee dat alleen rijen waarvan de waarde in de puntenkolom tussen 100 en 120 ligt, behouden blijven.
Merk ook op dat deze methode hetzelfde resultaat oplevert als de basis R-methode.
Opmerking : u kunt hier de volledige documentatie van de filterfunctie in dplyr vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R kunt uitvoeren:
Hoe u %in% kunt gebruiken om rijen met een waarde in de lijst in R te filteren
Hoe u op meerdere voorwaarden kunt filteren met behulp van dplyr
Hoe u rijen kunt filteren die een bepaalde tekenreeks bevatten met behulp van dplyr