So summieren sie spalten basierend auf einer bedingung in r


Sie können die folgende grundlegende Syntax verwenden, um Spalten basierend auf der Bedingung in R zu summieren:

 #sum values in column 3 where col1 is equal to 'A'
sum(df[ which (df$col1==' A '), 3])

Die folgenden Beispiele zeigen, wie diese Syntax in der Praxis mit dem folgenden Datenrahmen verwendet werden kann:

 #create data frame
df <- data. frame (conference = c('East', 'East', 'East', 'West', 'West', 'East'),
                 team = c('A', 'A', 'A', 'B', 'B', 'C'),
                 points = c(11, 8, 10, 6, 6, 5),
                 rebounds = c(7, 7, 6, 9, 12, 8))

#view data frame
df

  conference team points rebounds
1 East A 11 7
2 East A 8 7
3 East A 10 6
4 West B 6 9
5 West B 6 12
6 East C 5 8

Beispiel 1: Fügen Sie eine Spalte basierend auf einer Bedingung hinzu

Der folgende Code zeigt, wie man die Summe der Punktespalte für Zeilen ermittelt, in denen Team gleich „A“ ist:

 #sum values in column 3 (points column) where team is equal to 'A'
sum(df[ which (df$team==' A '), 3])

[1] 29

Der folgende Code zeigt, wie man die Summe der Bounces-Spalte für Zeilen ermittelt, in denen die Punkte größer als 9 sind:

 #sum values in column 4 (rebounds column) where points is greater than 9
sum(df[ which (df$points > 9), 4])

[1] 13

Beispiel 2: Fügen Sie eine Spalte basierend auf mehreren Bedingungen hinzu

Der folgende Code zeigt, wie man die Summe der Punktespalte für Zeilen ermittelt, in denen Team gleich „A“ und Konferenz gleich „Ost“ ist:

 #sum values in column 3 (points column) where team is 'A' and conference is 'East'
sum(df[ which (df$team==' A ' & df$conference==' East '), 3])

[1] 29

Beachten Sie, dass der & -Operator in R „und“ bedeutet.

Beispiel 3: Fügen Sie eine Spalte basierend auf einer von mehreren Bedingungen hinzu

Der folgende Code zeigt, wie man die Summe der Punktespalte für Zeilen ermittelt, in denen das Team gleich „A“ oder „C“ ist:

 #sum values in column 3 (points column) where team is 'A' or 'C'
sum(df[ which (df$team == ' A ' | df$team ==' C '), 3])

[1] 34

Beachten Sie, dass | Der Operator bedeutet in R „oder“.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere allgemeine Funktionen in R ausführen:

So summieren Sie bestimmte Spalten in R
So summieren Sie bestimmte Zeilen in R
So berechnen Sie die Summe nach Gruppe in R

Einen Kommentar hinzufügen

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