Kolommen optellen op basis van een voorwaarde in r


U kunt de volgende basissyntaxis gebruiken om kolommen op te tellen op basis van de voorwaarde in R:

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

De volgende voorbeelden laten zien hoe u deze syntaxis in de praktijk kunt gebruiken met het volgende dataframe:

 #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

Voorbeeld 1: Voeg een kolom toe op basis van een voorwaarde

De volgende code laat zien hoe je de som van de puntenkolom kunt vinden voor rijen waarin team gelijk is aan „A“:

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

[1] 29

De volgende code laat zien hoe u de som van de bouncekolom kunt vinden voor rijen waarvan de punten groter zijn dan 9:

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

[1] 13

Voorbeeld 2: Voeg een kolom toe op basis van meerdere voorwaarden

De volgende code laat zien hoe je de som van de puntenkolom kunt vinden voor rijen waarin team gelijk is aan „A“ en conferentie gelijk is aan „Oost“:

 #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

Merk op dat de operator & „en“ betekent in R.

Voorbeeld 3: Voeg een kolom toe op basis van een van verschillende voorwaarden

De volgende code laat zien hoe je de som van de puntenkolom kunt vinden voor rijen waarin het team gelijk is aan „A“ of „C“:

 #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

Merk op dat de | De operator betekent „of“ in R.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende functies in R kunt uitvoeren:

Hoe specifieke kolommen in R op te tellen
Hoe specifieke rijen in R op te tellen
Hoe de som per groep in R te berekenen

Einen Kommentar hinzufügen

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