Боксплоты

Боксплоты

Мария Черниговская

Боксплот (он же ящик с усами) — это график, который позволяет компактно визуализировать количественные данные. В этом конспекте разбираемся, как определяют боксплот, и что такое 1.5 IQR.

Кто придумал боксплоты?

Многие ошибочно считают, что боксплоты придумал в 1970-х известный американский статистик John Wilder Tukey — автор теста Тьюки и быстрого преобразования Фурье. Однако, даже в английской википедии указано, что уже в 1952 году идею боксплотов использовала Mary Eleanor Spear в книге "Charting Statistics". Вот только Мари называла этот график не боксплот, а range bar.

Но и на этом история изобретения боксплотов не заканчивается! Считается, что Мари не придумывала боксплот, а переиспользовала не процитировав (не делайте так!!) идею географа Percy Robert Crowe, который использовал похожие диаграммы еще в 1930-х. А самое раннее упоминание чего-то похожего на боксплоты можно найти аж в 1900-х годах. В общем, идея компактно описать и визуализировать данные приходила в голову разным людям и довольно давно.

Если интересно почитать больше про историю боксплотов, советую вот этот подробный пост со всеми деталями и ссылками. А на картинке ниже можно посмотреть как выглядели те самые range bar диаграммы из книги "Charting Statistics".

Spear, Mary Eleanor. Charting Statistics. McGraw-Hill, 1952, pp. 166


В чем основная идея боксплота?

Вместо того, чтобы рассматривать отдельно каждое наблюдение в данных, мы можем обобщить их с помощью 5 основных значений:

  1. Медиана — показывает “центр” данных, то есть значение, которое делит упорядоченную выборку пополам (подробнее я рассказывала про медиану тут)
  2. Первый квартиль 25% (обозначают Q1) — значение, которое отделяет 25% самых маленьких значений в упорядоченной выборке 
  3. Третий квартиль 75% (обозначают Q3) — значение, которое отделяет 75% самых маленьких значений в упорядоченной выборке 
  4. Самое маленькое значение — для простоты пока можно считать, что это минимальное значение выборки
  5. Самое большое значение — для простоты пока что максимальное значение выборки

Эти пять значений разделяют данные на 4 четвертинки, в каждой из которых примерно одинаковое количество точек. Именно по этим четвертинкам можно прикинуть форму распределения, его “ширину” и “перекосы”.

Из чего состоит боксплот?

Боксплот состоит из ящика и усов. Границы ящика рисуют по первому (Q1) и третьему (Q3) квартилю, то есть внутри ящика находится 50% данных — 25% больше медианы и 25% меньше медианы. 

Построение ящика

Остальные 50% данных, которые не попали в ящик, изображают с помощью усов. И тут начинается веселье 🥲. В интернете чаще всего можно найти два варианта изображения усов — от минимума до максимума или с помощью интерквартильного расстояния (он же интерквартильный размах, IQR). Интерквартильное расстояние — это разница между третьим и первым квартилем, то есть размер ящика.

По сути, боксплот с усами от минимума до максимума это и есть range bar диаграмма, которую строила Mary Eleanor Spear. А заслуга Тьюки в том, что он предложил использовать 1.5 интерквартильных расстояния (IQR) для построения усов.

Тонкости построения усов с помощью 1.5 IQR

Чтобы построить усы с помощью интерквартильного расстояния, нужно отложить отрезки равные 1.5 IQR от верхней и нижней границы ящика.

Построение усов по интерквартильному расстоянию

Внимательный читатель может заметить, что несмотря на то, что мы откладывали одинаковые отрезки для усов (1.5 IQR) в обе стороны, усы на финальном боксплоте получились разной длины. Как так получилось?

Дело в том, что усы дополнительно "подрезают" по максимальному и минимальному значению в данных. То есть, если ус длиной 1.5 IQR вылазит за самое маленькое значение в данных, его укорачивают до этого минимального значения (именно это случилось с нижним усом на нашем примере). Аналогично поступают если ус вылез за самое большое значение в данных.

Если в данных есть значения, которые не покрывают усы в 1.5 IQR (как в примере на верхнем усе), то эти значения называют аутлаерами . Аутлаеры — это отдельная большая тема, пока для простоты можно считать, что это такие необычно большие или слишком маленькие значения. Но это не значит, что аутлаеры обязательно плохие и их нужно сразу же выбрасывать из данных!

Как строят боксплоты на практике?

Чаще всего боксплоты строят именно с помощью 1.5 IQR, и иногда этот метод называют Тьюки боксплоты. По умолчанию, в R (base, ggplot2) и python (matplotlib, seaborn) строятся именно Тьюки боксплоты, но при желании способ построения усов можно изменить с помощью параметров соответствующей функции.

Однако, советую не расслабляться и держать в голове, что усы в боксплотах не обязаны строиться только по методу Тьюки. Например, в популярной в некоторых кругах программе для статистического анализа Prism, можно построить усы 7 разными способами.

Откуда взялось 1.5 в 1.5 IQR? 

Как пишет сам Тьюки, значение 1.5 было взято немного произвольно, но работает хорошо. 

"Our definition of outliers as data values that are smaller than {Q1 - 1.5IQR} or larger than {Q3 + 1.5IQR} is somewhat arbitrary, but experience with many data sets indicates that this definition serves well in identifying values that may require special attention." Hoaglin, Mosteller and Tukey (2000): Understanding Robust and Exploratory Data Analysis. Wiley

Конечно, значение 1.5 взято не совсем наобум. Например, если построить усы по формуле 1.5 IQR для выборки из нормального распределения, то всего лишь 0.7% данных окажутся вне усов.













Report Page