Повний посібник: як використовувати функцію aggregate() у r


Функцію Aggregate() у R можна використовувати для обчислення підсумкової статистики для набору даних.

Ця функція використовує такий базовий синтаксис:

aggregate(x, by, FUN)

золото:

  • x : змінна для агрегування
  • by : список змінних для групування
  • FUN : підсумкова статистика для обчислення

Наступні приклади показують, як використовувати цю функцію на практиці з наступним кадром даних у 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

Приклад 1: Загальне середнє на групу

У наступному коді показано, як використовувати функцію Aggregate() для обчислення середньої кількості очок, набраних командою:

 #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

Це говорить нам:

  • Гравці команди А набирали в середньому 91,67 очка за гру.
  • Гравці команди B набирали в середньому 94 очки за гру.

Зауважте, що ви також можете змінити назви стовпців у виводі за допомогою функції 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

Приклад 2: Агрегований рахунок за групою

Наступний код показує, як використовувати функцію Aggregate() для підрахунку кількості гравців у команді:

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

  Group.1 x
1 to 3
2 B 3

Це говорить нам:

  • Команда А складається з 3 гравців.
  • Команда Б складається з 3 гравців.

Приклад 3: Загальна сума по групі

У наступному коді показано, як використовувати функцію Aggregate() для обчислення суми очок, набраних кожною командою:

 #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

Це говорить нам:

  • Команда А набрала 275 очок.
  • Команда Б набрала 282 бали.

Приклад 4: Агрегування кількох стовпців

У наступному коді показано, як використовувати функцію Aggregate() , щоб знайти середню кількість набраних очок, згрупованих за командою та позицією:

 #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

Це говорить нам:

  • Гравці на позиції «F» команди А набрали в середньому 86 очок.
  • Гравці команди B на позиції «F» набрали в середньому 97 очок.
  • Гравці на позиції «G» у команді А набрали в середньому 94,5 очка.
  • Гравці на позиції «G» у команді B набирали в середньому 88 очок.

Додаткові ресурси

У наступних посібниках пояснюється, як використовувати інші поширені функції в R:

Як використовувати функцію table() у R
Як використовувати функцію gsub() у R
Як використовувати функцію summary() у R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *