Лучший способ поставить две гистограммы в одном масштабе?

14

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

При этом, как биннинг должен быть сделан? Должны ли обе гистограммы использовать одни и те же границы бинов, даже если одно распределение намного более рассредоточено, чем другое, как на рисунке 1 ниже? Следует ли выполнять бининг независимо для каждой гистограммы перед масштабированием, как показано на рисунке 2 ниже? Есть ли даже хорошее эмпирическое правило по этому вопросу?

Изображение 1 Изображение 2

dsimcha
источник
5
Графики QQ являются гораздо лучшим инструментом для тщательного сравнения эмпирических распределений. Их использование позволяет полностью избежать проблемы биннинга.
whuber
3
@whuber: Согласно, если вы просто хотите чувствительные визуализации, отличается ли два распределения, но гистограмма подход ИМХО лучше , если вы хотите подробное представление о том , как они отличаются.
dsimcha
3
@dsimcha Мой опыт был противоположным. График QQ четко показывает (количественно) различия масштаба, местоположения и формы, особенно в толщине хвостов. (Попробуйте сравнить два SD непосредственно из гистограмм, например: это невозможно, когда они близки по значению. На графике QQ вам нужно только сравнить наклоны, что является быстрым и относительно точным.) График QQ уступает гистограмме в терминах из режимов выбора, но гистограмма не годится до тех пор, пока не будет собран достаточный объем данных и не будет сделан хороший выбор бинов.
whuber
1
Я согласен с тем, что графики QQ являются лучшим решением, хотя они не решают проблему с мусорными ведрами, они просто заставляют вас размещать мусорные ведра в определенных местах (квантили :-) С другой стороны, это подразумевает, что мусорные ведра не действительно не должно быть общим для двух дистрибутивов.
сопряженный
1
@ dsimcha, я думаю, что что-то вроде возрастных / гендерных графиков может быть полезным изображением. В любом случае, зачем использовать гистограммы для этого? Просто распределяйте функции распределения напрямую. Однако, если вы играете с эмпирическими вещами, то лучшим вариантом будет сюжет QQ.
Дмитрий Челов

Ответы:

7

Я думаю, что вы должны использовать те же корзины. В противном случае ум обманет вас. Нормальный (0,2) выглядит более рассеянным относительно нормального (0,1) на изображении № 2, чем на изображении № 1. Ничего общего со статистикой. Похоже, что Нормальный (0,1) пошел на «диету».

Ральф Винтерс

Средние точки и конечные точки гистограммы также могут изменять восприятие дисперсии. Обратите внимание, что в этом апплете максимальный выбор бина подразумевает диапазон> 1,5 - ~ 5, в то время как минимальный выбор бина подразумевает диапазон <1 -> 5,5

http://www.stat.sc.edu/~west/javahtml/Histogram.html

Ральф Винтерс
источник
1
Не могли бы вы дать теоретическое обоснование этому мнению?
whuber
Нет, просто мнение. Но если бы у меня было время, я бы начал свои исследования в мире розничной упаковки (восприятие тонкого тела) и включил бы некоторые работы Tufte.
Ральф Уинтерс
@whuber: это в основном связано с тем, как наш мозг обрабатывает информацию. Когда есть меньшие мусорные ведра, наш ум также «сжимает» границы кривой. Попробуйте инвертировать размер бинов на рис. # 2, чтобы понять, что я имею в виду.
Нико
@nico Да, в этом вопросе есть элемент восприятия. Но на первый план выходит статистическая проблема, потому что она имеет гораздо большее влияние: меньшие ячейки ==> большая изменчивость выборки в ячейках ==> больше «рваных» гистограмм ==> большая сложность в сравнении. Таким образом, IMO, любой достойный ответ должен получить поддержку статистической теории (как минимум).
whuber
@whuber: Я имел в виду тот факт , что распределение выглядит по- разному , диспергированные в двух изображениях. Конечно, то, как они выглядят, не имеет никакого отношения к тому, насколько они действительно рассеяны.
Нико
2

Другой подход заключается alphaв том, ggplot2чтобы отобразить различные распределения на одном и том же графике и использовать что-то вроде параметра для решения проблем переполнения. Полезность этого метода будет зависеть от различий или сходств в вашем дистрибутиве, поскольку они будут отображаться с одинаковыми ячейками. Другой альтернативой может быть отображение сглаженных кривых плотности для каждого распределения. Вот пример этих параметров и других параметров, обсуждаемых в теме:

library(ggplot2)

df <- melt(
    data.frame( 
        x = rnorm(1000)
        , y = rnorm(1000, 0, 2)
    )
)


ggplot(data = df) + 
#   geom_bar(aes(x = value, fill = variable), alpha = 1/2)
#   geom_bar(aes(x = value)) + facet_grid(variable ~ .)
#   geom_density(aes(x = value, colour = variable))
#   stat_qq(aes(sample = value, colour = variable))
гнаться
источник
Разве это не сводит вопрос к выбору подходящей ширины ядра и можно ли (и как) сравнить два сглаживания, используя разные ширины ядра?
whuber
1
@whuber - действительная точка. Я не пытался предположить, что кривые плотности были бы всем конченным методом, просто предлагая другие альтернативы. Из этого поста ясно, что в любом подходе есть свои плюсы и минусы, поэтому он предлагал это в качестве еще одной жизнеспособной альтернативы.
Погоня
В свете этого я голосую за ваш ответ +1.
whuber
0

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

Xan
источник
Это будет работать, когда два размера выборки похожи. Но когда они различаются, общий размер ячейки (даже в стандартизированных единицах) может подходить для одной или другой гистограммы, но не для обеих. Как бы вы справились с этим делом?
whuber
Может быть, мы думаем о разных значениях стандартизации. Я имел в виду тот, с которым я связался, например, если у одной популяции есть stdev 5, а у другой - stdev 10, то после стандартизации у них обоих будет stdev 1. Их можно было бы тогда более справедливо сравнить с одинаковыми размер ячейки, так как каждая ячейка имеет сопоставимое количество пикселей и данных. Или, может быть, вы поняли, что «соответствующий размер корзины» - это черное искусство, уникальное для каждого набора данных ...
xan
Мы разделяем одно и то же значение «стандартизировать». Выбор размера ячейки требует осмысления и знания контекста, но его сложно охарактеризовать как «черную графику »: см., Например, stats.stackexchange.com/q/798/919 .
whuber