Функция tapply() в R — групповая статистика
Функция tapply() в R используется для применения функции к данным по группам для группового обобщения.
tapply() — одна из наиболее часто используемых функций в групповой статистике, аналогично GROUP BY в SQL.
Синтаксис функции tapply() выглядит следующим образом:
tapply(X, INDEX, FUN, ...)
Описание параметра:
XВектор данных для обобщения.
INDEXГруппирующая переменная (фактор или список).
FUNФункция обобщения для применения.
Пример
# Данные об оценках студентов
scores <- c(88, 92, 76, 85, 90, 95, 70, 82, 89, 78)
grade <- c("A", "A", "B", "B", "A", "A", "C", "B", "A", "C")
# Вычислить средний балл по классу
avg_by_grade <- tapply(scores, grade, mean)
print("Средний балл по классу:")
print(avg_by_grade)
# Вычислить несколько статистик по классам
result <- tapply(scores, grade, function(x) {
c(Количество= length(x), Среднее= mean(x), Максимум= max(x))
})
print("Подробная статистика по классам:")
print(result)
scores <- c(88, 92, 76, 85, 90, 95, 70, 82, 89, 78)
grade <- c("A", "A", "B", "B", "A", "A", "C", "B", "A", "C")
# Вычислить средний балл по классу
avg_by_grade <- tapply(scores, grade, mean)
print("Средний балл по классу:")
print(avg_by_grade)
# Вычислить несколько статистик по классам
result <- tapply(scores, grade, function(x) {
c(Количество= length(x), Среднее= mean(x), Максимум= max(x))
})
print("Подробная статистика по классам:")
print(result)
Выполнение приведенного выше кода дает следующий вывод:
[1] "各班平均分:" A B C 90.8 81.0 74.0 [1] "各班详细统计:" $A 人数 均值 最高 5.0 90.8 95.0 $B 人数 均值 最高 3.0 81.0 85.0 $C 人数 均值 最高 2.0 74.0 78.0Другие расширения
Пример на языке R