Как использовать функцию summary() в R (с примерами)


Функцию summary() в R можно использовать для быстрого суммирования значений в векторе, фрейме данных, регрессионной модели или модели ANOVA в R.

Этот синтаксис использует следующий основной синтаксис:

summary(data)

В следующих примерах показано, как использовать эту функцию на практике.

Пример 1: Использование summary() с вектором

В следующем коде показано, как использовать функцию summary() для суммирования значений в векторе:

#define vector
x <- c(3, 4, 4, 5, 7, 8, 9, 12, 13, 13, 15, 19, 21)

#summarize values in vector
summary(x)

 Min. 1st Qu. Median Mean 3rd Qu. Max.
 3.00 5.00 9.00 10.23 13.00 21.00

Функция summary() автоматически вычисляет следующую сводную статистику для вектора:

  • Мин.: минимальное значение
  • 1st Qu: значение 1-го квартиля (25-го процентиля)
  • Медиана: среднее значение
  • 3-й Qu: значение 3-го квартиля (75-го процентиля)
  • Макс.: максимальное значение

Обратите внимание, что если в векторе есть пропущенные значения (NA), функция summary() автоматически исключит их при вычислении сводной статистики:

#define vector
x <- c(3, 4, 4, 5, 7, 8, 9, 12, 13, 13, 15, 19, 21, NA, NA)

#summarize values in vector
summary(x)

 Min. 1st Qu. Median Mean 3rd Qu. Max.NA's 
 3.00 5.00 9.00 10.23 13.00 21.00 2

Пример 2: Использование summary() с фреймом данных

В следующем коде показано, как использовать функцию summary() для суммирования каждого столбца во фрейме данных:

#define data frame
df <- data.frame(team=c('A', 'B', 'C', 'D', 'E'),
 points=c(99, 90, 86, 88, 95),
 assists=c(33, 28, 31, 39, 34),
 rebounds=c(30, 28, 24, 24, 28))

#summarize every column in data frame
summary(df)

 team points assists rebounds 
 Length:5 Min. :86.0 Min. :28 Min. :24.0 
 Class :character 1st Qu.:88.0 1st Qu.:31 1st Qu.:24.0 
 Mode :character Median :90.0 Median :33 Median :28.0 
 Mean :91.6 Mean :33 Mean :26.8 
 3rd Qu.:95.0 3rd Qu.:34 3rd Qu.:28.0 
 Max.:99.0 Max.:39 Max.:30.0

Пример 3: Использование summary() с определенными столбцами фрейма данных

В следующем коде показано, как использовать функцию summary() для суммирования определенных столбцов во фрейме данных:

#define data frame
df <- data.frame(team=c('A', 'B', 'C', 'D', 'E'),
 points=c(99, 90, 86, 88, 95),
 assists=c(33, 28, 31, 39, 34),
 rebounds=c(30, 28, 24, 24, 28))

#summarize every column in data frame
summary(df[c('points', 'rebounds')])

 points rebounds 
 Min. :86.0 Min. :24.0 
 1st Qu.:88.0 1st Qu.:24.0 
 Median :90.0 Median :28.0 
 Mean :91.6 Mean :26.8 
 3rd Qu.:95.0 3rd Qu.:28.0 
 Max.:99.0 Max.:30.0 

Пример 4: Использование summary() с моделью регрессии

В следующем коде показано, как использовать функцию summary() для суммирования результатов модели линейной регрессии:

#define data
df <- data.frame(y=c(99, 90, 86, 88, 95, 99, 91),
 x=c(33, 28, 31, 39, 34, 35, 36))

#fit linear regression model
model <- lm(y~x, data=df)

#summarize model fit
summary(model)

Call:
lm(formula = y ~ x, data = df)

Residuals:
 1 2 3 4 5 6 7 
 6.515 -1.879 -6.242 -5.212 2.394 6.273 -1.848 

Coefficients:
 Estimate Std. Error t value Pr(>|t|) 
(Intercept) 88.4848 22.1050 4.003 0.0103 \*
x 0.1212 0.6526 0.186 0.8599 
---
Signif. codes: 0 '\*\*\*' 0.001 '\*\*' 0.01 '\*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 5.668 on 5 degrees of freedom
Multiple R-squared: 0.006853, Adjusted R-squared: -0.1918 
F-statistic: 0.0345 on 1 and 5 DF, p-value: 0.8599

Связанный: Как интерпретировать вывод регрессии в R

Пример 5: Использование summary() с моделью ANOVA

В следующем коде показано, как использовать функцию summary() для суммирования результатов модели ANOVA в R:

#make this example reproducible
set. seed (0)

#create data frame
data <- data.frame(program = rep (c("A", "B", "C"), each = 30 ),
 weight_loss = c(runif(30, 0, 3),
 runif(30, 0, 5),
 runif(30, 1, 7)))

#fit ANOVA model
model <- aov(weight_loss ~ program, data = data)

#summarize model fit
summary(model)

 Df Sum Sq Mean Sq F value Pr(>F) 
program 2 98.93 49.46 30.83 7.55e-11 \*\*\*
Residuals 87 139.57 1.60 
---
Signif. codes: 0 '\*\*\*' 0.001 '\*\*' 0.01 '\*' 0.05 '.' 0.1 ' ' 1

Связанный: Как интерпретировать результаты ANOVA в R

Дополнительные ресурсы

В следующих руководствах содержится дополнительная информация о вычислении сводной статистики в R:

Как рассчитать сводку из пяти чисел в R
Самый простой способ создания сводных таблиц в R
Как создать таблицы относительных частот в R