So fügen sie bestimmte zeilen in r hinzu: mit beispielen


Wir können die folgende Syntax verwenden, um bestimmte Zeilen eines Datenrahmens in R hinzuzufügen:

 with (df, sum (column_1[column_2 == ' some value ']))

Diese Syntax ermittelt die Zeilensumme von Spalte 1, in der Spalte 2 einem Wert entspricht, wobei der Datenrahmen df heißt.

Dieses Tutorial bietet mehrere Beispiele für die praktische Verwendung dieser Funktion mit dem folgenden Datenrahmen:

 #create data frame
df <- data.frame(team = c('A', 'A', 'B', 'B', 'B', 'C', 'C'),
points = c(4, 7, 8, 8, 8, 9, 12),
rebounds = c(3, 3, 4, 4, 6, 7, 7))

#view data frame
df

  team points rebounds
1 to 4 3
2 to 7 3
3 B 8 4
4 B 8 4
5 B 8 6
6 C 9 7
7 C 12 7

Beispiel 1: Zeilen basierend auf einem Spaltenwert hinzufügen

Der folgende Code zeigt, wie man die Summe aller Zeilen in der Punktespalte ermittelt, in der Team gleich C ist:

 #find sum of points where team is equal to 'C'
with (df, sum (points[team == ' C ']))

[1] 21

Und der folgende Code zeigt, wie man die Summe aller Zeilen in der Spalte „Bounces“ ermittelt, wenn der Wert der Punktespalte größer als 7 ist:

 #find sum of rebounds where points is greater than 7
with (df, sum (rebounds[points > 7]))

[1] 28

Beispiel 2: Zeilen basierend auf dem Wert mehrerer Spalten hinzufügen

Der folgende Code zeigt, wie man die Summe der Zeilen in der Spalte „Rebounds“ ermittelt, wenn der Wert der Punktespalte kleiner als 8 ist oder der Wert der Teamspalte gleich C ist:

 with (df, sum (rebounds[points < 8 | team == ' C ']))

[1] 20

Und der folgende Code zeigt, wie man die Summe der Zeilen in der Rebounds-Spalte ermittelt, wenn der Wert in der Punktespalte kleiner als 10 ist und der Wert in der Teamspalte gleich B ist:

 with (df, sum (rebounds[points < 10 & team == ' B ']))

[1] 14

Zusätzliche Ressourcen

So ordnen Sie Zeilen in R an
So entfernen Sie doppelte Zeilen in R
So löschen Sie Zeilen mit einigen oder allen NAs in R

Einen Kommentar hinzufügen

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