Kompletny przewodnik: jak używać funkcji aggregate() w języku r


Funkcja Aggregate() w języku R może służyć do obliczania statystyk podsumowujących dla zbioru danych.

Ta funkcja wykorzystuje następującą podstawową składnię:

agregat(x, by, ZABAWA)

Złoto:

  • x : Zmienna do agregacji
  • by : Lista zmiennych, według których można grupować
  • ZABAWA : Statystyka podsumowująca do obliczenia

Poniższe przykłady pokazują, jak w praktyce wykorzystać tę funkcję z następującą ramką danych w 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

Przykład 1: Ogólna średnia na grupę

Poniższy kod pokazuje, jak używać funkcji Aggregate() do obliczenia średniej liczby punktów zdobytych przez drużynę:

 #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

To nam mówi:

  • Zawodnicy drużyny A zdobywali średnio 91,67 punktów na mecz.
  • Zawodnicy drużyny B zdobywali średnio 94 punkty na mecz.

Pamiętaj, że możesz także zmienić nazwy kolumn w wynikach za pomocą funkcji colnames() :

 #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

Przykład 2: Zagregowane konto według grup

Poniższy kod pokazuje, jak używać funkcji Aggregate() do zliczania liczby graczy w drużynie:

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

  Group.1 x
1 to 3
2 B 3

To nam mówi:

  • Drużyna A składa się z 3 zawodników.
  • Drużyna B składa się z 3 zawodników.

Przykład 3: Całkowita suma na grupę

Poniższy kod pokazuje, jak użyć funkcji Aggregate() do obliczenia sumy punktów zdobytych przez każdą drużynę:

 #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

To nam mówi:

  • Zespół A zdobył łącznie 275 punktów.
  • Zespół B zdobył łącznie 282 punkty.

Przykład 4: Agregowanie wielu kolumn

Poniższy kod pokazuje, jak używać funkcji Aggregate() do znalezienia średniej liczby zdobytych punktów, pogrupowanych według drużyny i pozycji:

 #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

To nam mówi:

  • Gracze na pozycji „F” w drużynie A zdobyli średnio 86 punktów.
  • Zawodnicy drużyny B na pozycji „F” zdobyli średnio 97 punktów.
  • Zawodnicy na pozycji „G” w drużynie A zdobywali średnio 94,5 punktu.
  • Zawodnicy na pozycji „G” w drużynie B zdobyli średnio 88 punktów.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak korzystać z innych typowych funkcji w R:

Jak korzystać z funkcji table() w R
Jak korzystać z funkcji gsub() w R
Jak korzystać z funkcji podsumowania() w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *