De complete gids: de functie aggregate() gebruiken in r


De functie Aggregate() in R kan worden gebruikt om samenvattende statistieken voor een reeks gegevens te berekenen.

Deze functie gebruikt de volgende basissyntaxis:

aggregaat(x, door, FUN)

Goud:

  • x : Een variabele om te aggregeren
  • by : Een lijst met variabelen waarop u wilt groeperen
  • FUN : De samenvattende statistiek om te berekenen

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('G', 'G', 'F', 'G', 'F', 'F'),
                 points=c(99, 90, 86, 88, 95, 99),
                 assists=c(33, 28, 31, 39, 34, 23),
                 rebounds=c(30, 28, 24, 24, 28, 33))

#view data frame
df

  team position points assists rebounds
1 AG 99 33 30
2 AG 90 28 28
3 AF 86 31 24
4 BG 88 39 24
5 BF 95 34 28
6 BF 99 23 33

Voorbeeld 1: Totaalgemiddelde per groep

De volgende code laat zien hoe u de functie Aggregate() gebruikt om het gemiddelde aantal gescoorde punten per team te berekenen:

 #find mean points by team
aggregate(df$points, by=list(df$team), FUN=mean)

  Group.1 x
1 A 91.66667
2 B 94.00000

Dit vertelt ons:

  • Spelers van team A scoorden gemiddeld 91,67 punten per wedstrijd.
  • Spelers van team B scoorden gemiddeld 94 punten per wedstrijd.

Merk op dat u de kolomnamen in de uitvoer ook kunt wijzigen met behulp van de colnames() functie:

 #find mean points by team
agg <- aggregate(df$points, by=list(df$team), FUN=mean)

#rename columns in output
colnames(agg) <- c(' Team ', ' Mean_Points ')

#viewoutput
agg

  Team Mean_Points
1 A 91.66667
2 B 94.00000

Voorbeeld 2: Geaggregeerde rekening per groep

De volgende code laat zien hoe u de functie Aggregate() gebruikt om het aantal spelers per team te tellen:

 #count number of players per team
aggregate(df$points, by=list(df$team), FUN=length)

  Group.1 x
1 to 3
2 B 3

Dit vertelt ons:

  • Team A bestaat uit 3 spelers.
  • Team B bestaat uit 3 spelers.

Voorbeeld 3: Totaalbedrag per groep

De volgende code laat zien hoe u de functie Aggregate() gebruikt om de som van de door elk team gescoorde punten te berekenen:

 #find sum of points scored by team
aggregate(df$points, by=list(df$team), FUN=sum)

  Group.1 x
1 to 275
2 B 282

Dit vertelt ons:

  • Team A scoorde in totaal 275 punten.
  • Team B scoorde in totaal 282 punten.

Voorbeeld 4: Voeg meerdere kolommen samen

De volgende code laat zien hoe u de functie Aggregate() gebruikt om het gemiddelde aantal gescoorde punten te vinden, gegroepeerd op team en positie:

 #find mean of points scored, grouped by team and position
aggregate(df$points, by=list(df$team, df$position), FUN=mean)

  Group.1 Group.2 x
1AF 86.0
2 BF 97.0
3 AG 94.5
4 BG 88.0

Dit vertelt ons:

  • Spelers in positie “F” van team A scoorden gemiddeld 86 punten.
  • De spelers op de “F”-positie van team B scoorden gemiddeld 97 punten.
  • Spelers in de “G”-positie van team A scoorden gemiddeld 94,5 punten.
  • Spelers in de “G”-positie van team B scoorden gemiddeld 88 punten.

Aanvullende bronnen

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

Hoe de functie table() in R te gebruiken
Hoe de gsub()-functie in R te gebruiken
Hoe de summary()-functie in R te gebruiken

Einen Kommentar hinzufügen

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