So fügen sie einem datenrahmen in r eine zählspalte hinzu


Sie können die folgende grundlegende Syntax verwenden, um einem Datenrahmen in R eine „count“-Spalte hinzuzufügen:

 df %>%
  group_by(var1) %>%
  mutate(var1_count = n())

Diese spezielle Syntax fügt dem Datenrahmen eine Spalte namens var1_count hinzu, die die Anzahl der Werte in der Spalte namens var1 enthält.

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: Fügen Sie eine Zahlenspalte in R hinzu

Angenommen, wir haben den folgenden Datenrahmen in R, der Informationen über verschiedene Basketballspieler enthält:

 #define data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'),
                 position=c('G', 'F', 'F', 'F', 'G', 'G', 'F', 'F'),
                 points=c(18, 22, 19, 14, 14, 11, 20, 28))

#view data frame
df

  team position points
1 AG 18
2 AF 22
3 FY 19
4 BF 14
5 BG 14
6 BG 11
7 BF 20
8 BF 28

Mit dem folgenden Code können wir eine Spalte namens team_count hinzufügen, die die Anzahl jedes Teams enthält:

 library (dplyr)

#add column that shows total count of each team
df %>%
  group_by(team) %>%
  mutate(team_count = n())

# A tibble: 8 x 4
# Groups: team [2]
  team position points team_count
              
1 AG 18 3
2 AF 22 3
3 FY 19 3
4 BF 14 5
5 BG 14 5
6 BG 11 5
7 BF 20 5
8 BF 28 5

Es gibt 3 Linien mit einem Teamwert von A und 5 Linien mit einem Teamwert von B.

Also:

  • Für jede Zeile, in der Team gleich A ist, ist der Wert in der Spalte team_count 3 .
  • Für jede Zeile, in der Team gleich B ist, beträgt der Wert in der Spalte team_count 5 .

Sie können auch eine „Konto“-Spalte hinzufügen, die mehrere Variablen gruppiert.

Der folgende Code zeigt beispielsweise, wie eine „Konto“-Spalte hinzugefügt wird, die Team- und Positionsvariablen gruppiert:

 library (dplyr)

#add column that shows total count of each team and position
df %>%
  group_by(team, position) %>%
  mutate(team_pos_count = n())

# A tibble: 8 x 4
# Groups: team, position [4]
  team position points team_pos_count
                  
1 AG 18 1
2 AF 22 2
3 FY 19 2
4 BF 14 3
5 BG 14 2
6 BG 11 2
7 BF 20 3
8 BF 28 3

Aus dem Ergebnis können wir sehen:

  • Es gibt eine Zeile, die A in der Teamspalte und G in der Positionsspalte enthält.
  • Es gibt zwei Zeilen, die A in der Teamspalte und F in der Positionsspalte enthalten.
  • Es gibt 3 Zeilen, die B in der Teamspalte und F in der Positionsspalte enthalten.
  • Es gibt zwei Zeilen, die B in der Teamspalte und F in der Positionsspalte enthalten.

Zusätzliche Ressourcen

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

Wie man in R nach Bedingungen gruppiert und mit ihnen zählt
So zählen Sie die Anzahl der Elemente in einer Liste in R
So wählen Sie einzelne Zeilen in einem Datenrahmen in R aus

Einen Kommentar hinzufügen

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