So unterteilen sie einen datenrahmen in r basierend auf mehreren bedingungen


Sie können die folgenden Methoden verwenden, um einen Datenrahmen basierend auf mehreren Bedingungen in R zu unterdefinieren:

Methode 1: Teilmenge des Datenrahmens mit „OR“-Logik

 df_sub <- subset(df, team == ' A ' | points < 20 )

In diesem speziellen Beispiel wird der Datenrahmen für Zeilen untergeordnet, in denen die Teamspalte „A“ entspricht oder die Punktespalte weniger als 20 beträgt.

Methode 2: Teilmenge des Datenrahmens mithilfe der „AND“-Logik

 df_sub <- subset(df, team == ' A ' & points < 20 )

In diesem speziellen Beispiel wird der Datenrahmen für Zeilen untergeordnet, in denen die Teamspalte „A“ entspricht und die Punktespalte weniger als 20 beträgt.

In diesem Tutorial wird erläutert, wie Sie die einzelnen Methoden in der Praxis mit dem folgenden Datenrahmen verwenden:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('Guard', 'Guard', 'Forward',
                            'Guard', 'Forward', 'Forward'),
                 dots=c(22, 25, 19, 22, 12, 35))

#view data frame
df

  team position points
1 A Guard 22
2 A Guard 25
3 A Forward 19
4 B Guard 22
5 B Forward 12
6 B Forward 35

Beispiel 1: Teilmengendatenrahmen mit „OR“-Logik

Der folgende Code zeigt, wie Sie den Datenrahmen für Zeilen unterteilen, in denen die Teamspalte „A“ entspricht oder die Punktespalte kleiner als 20 ist:

 #subset data frame where team is 'A' or points is less than 20
df_sub <- subset(df, team == ' A ' | points < 20 )

#view subset
df_sub

  team position points
1 A Guard 22
2 A Guard 25
3 A Forward 19
5 B Forward 12

Jede der Zeilen in der Teilmenge hat entweder den Wert „A“ in der Teamspalte oder einen Wert in der Punktespalte von weniger als 20.

Hinweis : Die | Das Symbol steht für „ODER“ in R.

In diesem Beispiel haben wir nur ein einziges „ODER“-Symbol in die Funktion subset() eingefügt, aber wir könnten so viele einschließen, wie wir möchten, basierend auf noch mehr Bedingungen.

Beispiel 2: Teildatenrahmen mit „AND“-Logik

Der folgende Code zeigt, wie Sie den Datenrahmen für Zeilen unterteilen, in denen die Teamspalte „A“ entspricht und die Punktespalte weniger als 20 beträgt:

 #subset data frame where team is 'A' and points is less than 20
df_sub <- subset(df, team == ' A ' & points < 20 )

#view subset
df_sub

  team position points
3 A Forward 19

Beachten Sie, dass die resultierende Teilmenge nur eine Zeile enthält.

Tatsächlich hat nur eine Zeile einen „A“-Wert in der Mannschaftsspalte und einen Wert in der Punktespalte von weniger als 20.

Hinweis : Das Symbol & steht für „UND“ in R.

In diesem Beispiel haben wir nur ein einziges „AND“-Symbol in die Funktion subset() eingefügt, aber wir könnten so viele einschließen, wie wir möchten, basierend auf noch mehr Bedingungen.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in R ausführen:

So wählen Sie einzelne Zeilen in einem Datenrahmen in R aus
So wählen Sie Zeilen mit NA-Werten in R aus
So wählen Sie Zeilen basierend auf Vektorwerten in R aus

Einen Kommentar hinzufügen

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