A: wie man nach bedingung gruppiert und zählt


Sie können die folgende grundlegende Syntax verwenden, um eine Gruppierungs- und Zählbedingung in R auszuführen:

 library (dplyr)

df %>%
  group_by(var1) %>%
  summarize(count = sum(var2 == ' val '))

Diese spezielle Syntax gruppiert die Zeilen des Datenrahmens basierend auf var1 und zählt dann die Anzahl der Zeilen, in denen var2 gleich „val“ ist.

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

Beispiel: Gruppieren nach und Zählen mit einer Bedingung in R

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 pos=c('Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo', 'Fo'),
                 points=c(18, 22, 19, 14, 14, 11, 20, 28))


#view data frame
df

  team pos points
1 A Gu 18
2 A Fo 22
3 A Fo 19
4 A Fo 14
5 B Gu 14
6 B Gu 11
7 B Fo 20
8 B Fo 28

Der folgende Code zeigt, wie Sie den Datenrahmen nach Teamvariablen gruppieren und die Anzahl der Zeilen zählen, in denen die Pos- Variable gleich „Gu“ ist:

 library (dplyr)

#group by team and count rows where pos is 'Gu'
df %>%
  group_by(team) %>%
  summarize(count = sum(pos == ' Gu '))

# A tibble: 2 x 2
  team count
   
1 to 1
2 B 2

Aus dem Ergebnis können wir sehen:

  • Team A hat 1 Zeile, in der die Pos-Spalte gleich „Gu“ ist.
  • Team B hat 2 Zeilen, in denen die Pos-Spalte gleich „Gu“ ist.

Wir können eine ähnliche Syntax zum Gruppieren und Zählen mit einer Zahlenbedingung verwenden.

Der folgende Code zeigt beispielsweise, wie man nach Teamvariable gruppiert und die Anzahl der Zeilen zählt, in denen die Punktevariable größer als 15 ist:

 library (dplyr)

#group by team and count rows where pos is 'Gu'
df %>%
  group_by(team) %>%
  summarize(count = sum(points > 15 ))

# A tibble: 2 x 2
  team count
   
1 to 3
2 B 2

Aus dem Ergebnis können wir sehen:

  • Team A hat 3 Linien, in denen die Punktespalte größer als 15 ist
  • Team B hat 2 Linien, in denen die Punktespalte größer als 15 ist

Sie können eine ähnliche Syntax zum Gruppieren und Zählen mit jeder gewünschten spezifischen Bedingung verwenden.

Zusätzliche Ressourcen

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

So zählen Sie Werte in einer Spalte mit Bedingung in R
So wählen Sie die ersten N-Werte nach Gruppe in R aus

Einen Kommentar hinzufügen

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