Меры разброса

Введение в статистику на R

Maggie Matsui

Content Developer, DataCamp

Что такое разброс?

Две гистограммы: узкая, где данные охватывают лишь несколько значений, и широкая, где данные охватывают больший диапазон.

Введение в статистику на R

Дисперсия

Среднее расстояние от каждой точки данных до среднего значения Точечный график из 7 точек с чёрной линией посередине, обозначающей среднее.

Введение в статистику на R

Вычисление дисперсии

Точечный график из 7 точек с чёрной линией посередине, обозначающей среднее. Между каждой точкой и средней линией нарисованы стрелки.

dists <- msleep$sleep_total - mean(msleep$sleep_total)
dists
1.66626506  6.56626506 ... -4.13373494  2.06626506 -0.63373494
Введение в статистику на R

Вычисление дисперсии

squared_dists <- (dists)^2
2.776439251 43.115836841 ... 17.087764552  4.269451299  0.401619974
sum_sq_dists <- sum(squared_dists)
sum_sq_dists
1624.066
Введение в статистику на R

Вычисление дисперсии

sum_sq_dists/82
19.80568
var(msleep$sleep_total)
19.80568
Введение в статистику на R

Стандартное отклонение

sqrt(var(msleep$sleep_total))
4.450357
# Standard deviation of 'sleep_total'
sd(msleep$sleep_total)
4.450357
Введение в статистику на R

Среднее абсолютное отклонение

dists <- msleep$sleep_total - mean(msleep$sleep_total)
mean(abs(dists))
3.566701

 

Стандартное отклонение и среднее абсолютное отклонение

  • СО возводит расстояния в квадрат, сильнее штрафуя за большие отклонения.
  • САО штрафует за каждое отклонение одинаково.
  • Ни один из показателей не лучше другого, но СО используется чаще.
Введение в статистику на R

Квартили

quantile(msleep$sleep_total)
   0%   25%   50%   75%  100% 
 1.90  7.85 10.10 13.75 19.90

Второй квартиль / 50-й перцентиль = медиана

Введение в статистику на R

Ящики с усами и квартили

ggplot(msleep, aes(y = sleep_total)) +
  geom_boxplot()

Ящик с усами для общего времени сна млекопитающих

Введение в статистику на R

Квантили

quantile(msleep$sleep_total, probs = c(0, 0.2, 0.4, 0.6, 0.8, 1))
   0%   20%   40%   60%   80%  100% 
 1.90  6.24  9.48 11.14 14.40 19.90

seq(from, to, by)

quantile(msleep$sleep_total, probs = seq(0, 1, 0.2))
   0%   20%   40%   60%   80%  100% 
 1.90  6.24  9.48 11.14 14.40 19.90
Введение в статистику на R

Межквартильный размах (IQR)

Высота прямоугольника на ящике с усами

iqr = quantile(msleep$sleep_total, 0.75) - quantile(msleep$sleep_total, 0.25)
iqr
75%
5.9
Введение в статистику на R

Выбросы

Выброс: точка данных, существенно отличающаяся от остальных

Как определить, что отличие существенно? Точка является выбросом, если:

  • $\text{data} < \text{Q1} - 1.5\times\text{IQR}$    или
  • $\text{data} > \text{Q3} + 1.5\times\text{IQR}$
Введение в статистику на R

Поиск выбросов

iqr <- quantile(msleep$bodywt, 0.75) - quantile(msleep$bodywt, 0.25)

lower_threshold <- quantile(msleep$bodywt, 0.25) - 1.5 * iqr upper_threshold<- quantile(msleep$bodywt, 0.75) + 1.5 * iqr
msleep %>% filter(bodywt < lower_threshold | bodywt > upper_threshold ) %>% 
  select(name, vore, sleep_total, bodywt)
# A tibble: 11 x 4
   name                 vore  sleep_total bodywt
   <chr>                <chr>       <dbl>  <dbl> 
 1 Cow                  herbi         4      600 
 2 Asian elephant       herbi         3.9   2547 
 3 Horse                herbi         2.9    521 
 ...
Введение в статистику на R

Давайте потренируемся!

Введение в статистику на R

Preparing Video For Download...