Filtern Sie mehrere Werte in einer Zeichenfolgenspalte in R mit Dplyr
In diesem Artikel erfahren Sie, wie Sie mehrere Werte in einer Zeichenfolgenspalte in der Programmiersprache R mithilfe des Pakets dplyr filtern .
Methode 1: Verwenden der Methode filter()
Die Funktion filter() wird verwendet, um Fälle auszuwählen und die Werte basierend auf den Filterbedingungen herauszufiltern.
Syntax: filter(df, Bedingung)
Parameter:
df: Dataframe-Objekt
Bedingung: Filterung basierend auf dieser Bedingung
Beispiel: R-Programm zum Filtern mehrerer Werte mit filter()
R
library(dplyr) df <- data.frame(prep = c(11:15), str = c("Welcome", "to", "Geeks", "for", "Geeks"), date=c("Sunday","Monday", "Thursday", "January","December")) filter(df,date=='Sunday'| date=='Monday')
Ausgabe:
prep str date 1 11 Welcome Sunday 2 12 to Monday
Methode 2: Verwenden von filter() mit %in%-Operator
Übergeben Sie dabei zuerst Ihr Datenrahmenobjekt an die Filterfunktion, schreiben Sie dann in den Bedingungsparameter den Spaltennamen, in dem Sie mehrere Werte filtern möchten, setzen Sie dann den %in% -Operator ein und übergeben Sie dann einen Vektor, der alle Zeichenfolgenwerte enthält, die Sie wollen im Ergebnis. Dadurch werden alle Zeilen erzeugt, die die Zeichenfolgenwerte in der angegebenen Spalte enthalten.
Syntax: filter(df, Datum %in% c(„Donnerstag“, „Januar“, „Sonntag“))
Parameter:
df: Datenrahmenobjekt
Bedingung: Spaltenname %in% Vektorzeichenfolge von Werten
Beispiel: R-Programm zum Filtern mehrerer Werte mit %in%
R
library(dplyr) df <- data.frame(prep = c(11:15), str = c("Welcome", "to", "Geeks", "for", "Geeks"), date=c("Sunday","Monday", "Thursday", "January","December")) filter(df, date %in% c("Thursday", "January", "Sunday"))
Ausgabe:
prep str date 1 11 Welcome Sunday 2 13 Geeks Thursday 3 14 for January
Beispiel: Das gleiche wie oben, aber in diesem Beispiel führen wir die gleiche Operation aus, aber auf verschiedenen Spalten mit einem anderen Satz von Werten.
R
library(dplyr) df <- data.frame(prep = c(11:15), str = c("Welcome", "to", "Geeks", "for", "Geeks"), date=c("Sunday","Monday", "Thursday", "January","December")) filter(df, str %in% c("Geeks", "to"))
Ausgabe:
prep str date 1 12 to Monday 2 13 Geeks Thursday 3 15 Geeks December
Methode 3: Verwendung der Methode select()
Für diese Funktionalität akzeptiert die Funktion select() 2 Parameter, der erste ist die Filterfunktion und der zweite ist ein Vektor von Spaltennamen,
Syntax: select(filter(df, Bedingung, Spalten)
Parameter:
df : Datenrahmenobjekt
Bedingung: Filterbedingung
Spalten: Vektor der Spaltennamen, die Sie drucken möchten
filter() funktioniert fast genauso wie oben angegeben, der einzige Unterschied ist der Vektor der Spaltennamen, den wir im zweiten Argument übergeben. Dadurch werden nur die Spalten gedruckt, die in der Auswahlfunktion übergeben wurden. Auf diese Weise können wir nur ausgewählte Spalten drucken.
Beispiel: Drucken ausgewählter Zeilen
R
library(dplyr) df <- data.frame(prep = c(11:15), str = c("Welcome", "to", "Geeks", "for", "Geeks"), date=c("Sunday","Monday", "Thursday", "January","December")) select(filter(df, date %in% c("January", "Monday")), c(date,prep))
Ausgabe:
date prep 1 Monday 12 2 January 14