Hoe observaties per groep te tellen in r
Vaak ben je misschien geïnteresseerd in het tellen van het aantal observaties per groep in R.
Gelukkig is dit eenvoudig te doen met behulp van de count() -functie van de dplyr- bibliotheek.
In deze tutorial worden verschillende voorbeelden van praktisch gebruik van deze functie uitgelegd met behulp van het volgende dataframe:
#create data frame df <- data.frame(team = c('A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'C', 'C' , 'CC'), position = c('G', 'G', 'F', 'G', 'F', 'F', 'F', 'G', 'G', 'F', 'F', 'F '), points = c(4, 13, 7, 8, 15, 15, 17, 9, 21, 22, 25, 31)) #view data frame df team position points 1 GA 4 2 AG 13 3AF 7 4 BG 8 5 BF 15 6 BF 15 7 BF 17 8 BG 9 9 GC 21 10 CF 22 11 CF 25 12 CF 31
Voorbeeld 1: tellen met een variabele
De volgende code laat zien hoe je het totale aantal spelers per team telt:
library (dplyr)
#count total observations by variable 'team'
df %>% count(team)
# A tibble: 3 x 2
team n
1 to 3
2 B 5
3 C 4
Uit het resultaat kunnen we zien dat:
- Team A bestaat uit 3 spelers
- Team B bestaat uit 5 spelers
- Team C bestaat uit 4 spelers
Deze single count() functie geeft ons een mooi beeld van de verdeling van spelers per team.
Merk op dat we de tellingen ook kunnen sorteren als we dat willen:
#count total observations by variable 'team' df %>% count(team, sort= TRUE ) # A tibble: 3 x 2 team n 1 B 5 2 C 4 3 to 3
Voorbeeld 2: Tellen met meerdere variabelen
We kunnen ook op verschillende variabelen sorteren:
#count total observations by 'team' and 'position'
df %>% count(team, position)
# A tibble: 6 x 3
team position n
1 AF 1
2 AG 2
3 BF 3
4 BG 2
5 CF 3
6 GC 1
Uit het resultaat kunnen we zien dat:
- Team A heeft 1 speler in de “F” (voorwaartse) positie en 2 spelers in de “G” (bewaker) positie.
- Team B heeft 3 spelers in de “F” (vooruit) positie en 2 spelers in de “G” (bewaker) positie.
- Team C heeft 3 spelers in de “F” (voorwaartse) positie en 1 speler in de “G” (bewaker) positie.
Voorbeeld 3: gewogen getal
We kunnen de tellingen van de ene variabele ook ‘wegen’ met een andere variabele. De volgende code laat bijvoorbeeld zien hoe het totale aantal observaties per team moet worden geteld, waarbij de variabele ‚punten‘ als gewicht wordt gebruikt:
df %>% count(team, wt= points )
# A tibble: 3 x 2
team n
1 to 24
2 B 64
3 C 99
U kunt de volledige documentatie voor de functie count() hier vinden.