So filtern sie mit dplyr nach datum
Sie können die folgenden Methoden verwenden, um einen Datenrahmen nach Datum in R mithilfe des dplyr- Pakets zu filtern:
Methode 1: Zeilen nach Datum filtern
df %>% filter(date_column > ' 2022-01-01 ')
Methode 2: Zeilen nach Datum filtern
df %>% filter(date_column < ' 2022-01-01 ')
Methode 3: Zeilen zwischen zwei Datumsangaben filtern
df %>% filter(between(date_column, as. Date (' 2022-01-20 '), as. Date (' 2022-02-20 ')))
Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Datenrahmen in R verwendet wird:
#create data frame
df <- data. frame (day=seq( as.Date (' 2022-01-01 '), by = ' week ', length.out = 10 ),
sales=c(40, 35, 39, 44, 48, 51, 23, 29, 60, 65))
#view data frame
df
day sales
1 2022-01-01 40
2 2022-01-08 35
3 2022-01-15 39
4 2022-01-22 44
5 2022-01-29 48
6 2022-02-05 51
7 2022-02-12 23
8 2022-02-19 29
9 2022-02-26 60
10 2022-03-05 65
Beispiel 1: Zeilen nach Datum filtern
Mit dem folgenden Code können wir Zeilen aus dem Datenrahmen filtern, deren Datum nach dem 25.01.2022 liegt:
library (dplyr)
#filter for rows with date after 1/25/2022
df %>% filter(day > ' 2022-01-25 ')
day sales
1 2022-01-29 48
2 2022-02-05 51
3 2022-02-12 23
4 2022-02-19 29
5 2022-02-26 60
6 2022-03-05 65
Jede der Zeilen im resultierenden Datenrahmen hat ein Datum nach dem 25.01.2022.
Beispiel 2: Zeilen nach Datum filtern
Mit dem folgenden Code können wir Zeilen aus dem Datenrahmen filtern, deren Datum vor dem 25.01.2022 liegt:
library (dplyr)
#filter for rows with date before 1/25/2022
df %>% filter(day < ' 2022-01-25 ')
day sales
1 2022-01-01 40
2 2022-01-08 35
3 2022-01-15 39
4 2022-01-22 44
Jede der Zeilen im resultierenden Datenrahmen hat ein Datum vor dem 25.01.2022.
Beispiel 3: Zeilen zwischen zwei Datumsangaben filtern
Mit dem folgenden Code können wir Zeilen aus dem Datenrahmen filtern, deren Datum zwischen dem 20.01.2022 und dem 20.02.2022 liegt:
library (dplyr)
#filter for rows with dates between 1/20/2022 and 2/20/2022
df %>% filter(between(date_column, as. Date (' 2022-01-20 '), as. Date (' 2022-02-20 ')))
day sales
1 2022-01-22 44
2 2022-01-29 48
3 2022-02-05 51
4 2022-02-12 23
5 2022-02-19 29
Jede der Zeilen im resultierenden Datenrahmen hat ein Datum zwischen dem 20.01.2022 und dem 20.02.2022.
Hinweis Nr. 1 : Wenn eine der oben genannten Methoden nicht funktioniert, müssen Sie möglicherweise zuerst die Daten, mit denen Sie arbeiten, mithilfe der Funktion as.Date( ) in ein erkennbares Datumsformat konvertieren.
Hinweis Nr. 2 : Die vollständige Dokumentation der Filterfunktion in dplyr finden Sie hier .
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in dplyr ausführen:
So filtern Sie Zeilen, die eine bestimmte Zeichenfolge enthalten, mit dplyr
So filtern Sie mit dplyr nach mehreren Bedingungen
So verwenden Sie einen „nicht enthaltenen“ Filter in dplyr