A: so filtern sie zeilen, deren spalte zwischen zwei werten liegt


Sie können die folgenden Methoden verwenden, um einen Datenrahmen in R zu filtern, bei dem eine bestimmte Spalte zwischen zwei Werten liegt:

Methode 1: Verwenden Sie Base R

 df_new <- subset(df, points %in% 100 : 120 )

Methode 2: dplyr verwenden

 library (dplyr)

df_new <- df %>% filter(between(points, 100 , 120 ))

In beiden Beispielen wird ein Datenrahmen so gefiltert, dass er nur Zeilen enthält, deren Wert in der Spalte „Punkte“ zwischen 100 und 120 liegt.

Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Datenrahmen in R verwendet wird:

 #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

Beispiel 1: Filtern Sie mithilfe der Basis R, wo die Spalte zwischen zwei Werten liegt

Wir können die folgende Syntax mit der R-Basis -Subset() -Funktion verwenden, um den Datenrahmen so zu filtern, dass er nur Zeilen enthält, deren Wert in der Punktespalte zwischen 100 und 120 liegt:

 #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

Beachten Sie, dass nur Zeilen beibehalten werden, deren Wert in der Punktespalte zwischen 100 und 120 liegt.

Alle anderen Zeilen, deren Wert außerhalb dieses Bereichs liegt, werden gelöscht.

Beispiel 2: Filtern Sie mit dplyr, wo die Spalte zwischen zwei Werten liegt

Wir können die folgende Syntax mit den Funktionen filter() und between() des dplyr-Pakets in R verwenden, um den Datenrahmen so zu filtern, dass er nur Zeilen enthält, deren Wert in der Punktespalte zwischen 100 und 120 liegt:

 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

Beachten Sie, dass nur Zeilen beibehalten werden, deren Wert in der Punktespalte zwischen 100 und 120 liegt.

Beachten Sie außerdem, dass diese Methode das gleiche Ergebnis liefert wie die Basis-R-Methode.

Hinweis : Die vollständige Dokumentation der Filterfunktion in dplyr finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in R ausgeführt werden:

So verwenden Sie %in% zum Filtern von Zeilen mit einem Wert in der Liste in R
So filtern Sie mit dplyr nach mehreren Bedingungen
So filtern Sie Zeilen, die eine bestimmte Zeichenfolge enthalten, mit dplyr

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert