Квартили в Excel


10

Меня интересует определение квартиля, которое обычно используется, когда вы занимаетесь базовой статистикой. У меня есть книга типа Stat 101, и она просто дает интуитивное определение. «Около четверти данных приходится на первый квартиль или ниже ...» Но он дает пример, в котором он вычисляет Q1, Q2 и Q3 для набора данных.

5, 7, 9, 10, 11, 13, 14, 15, 16, 17, 18, 18, 20, 21, 37

Поскольку существует 15 фрагментов данных, в качестве медианы выбирается 15, Q2. Затем он разделяет оставшиеся данные на две половины, с 5 по 14 и с 16 по 37. Каждая из них содержит 7 частей данных, и они находят медиану каждого из этих наборов, 10 и 18, как Q1 и Q3, соответственно. Вот как бы я сам это вычислил.

Я посмотрел на статью в Википедии, и она дает 2 метода. Один согласен с вышеизложенным, а другой говорит, что вы могли бы также включить медиану 15 в оба набора (но вы не включили бы медиану, если бы она была средним из двух средних чисел в случае четного числа точек данных). Это все имеет смысл для меня.

Но затем я проверил Excel, чтобы увидеть, как Excel вычисляет его. Я использую Excel 2010, который имеет 3 разные функции. Quartile был доступен в 2007 году и предыдущих версиях. Кажется, они хотят, чтобы вы прекратили использовать это в 2010 году, но он все еще доступен. Quartile.Inc является новым, но, насколько я могу судить, полностью согласен с Quartile. И есть Quartile.Exc также. Я считаю, что оба последних 2 являются новыми в 2010 году. На этот раз я только что попытался использовать целые числа 1, 2, 3, ..., 10. Я ожидаю, что Excel даст медиану 5,5, Q1 из 3 и Q3 из 8. Метод также из книги статистики. поскольку оба метода в Википедии дадут эти ответы, так как медиана - это среднее от средних двух чисел. Excel дает

quartile number, Quartile.Inc, Quartile.Exc
1,               3.25,         2.75 
2,               5.5,          5.5
3,               7.75,         8.25

Ни один из них не согласен с тем, о чем я ранее говорил.

Описания в файле справки для Excel:

Quartile.Inc - возвращает квартиль набора данных на основе значений процентиля от 0..1 включительно.

Quartile.Exc - возвращает квартиль набора данных, основанный на значениях процентиля от 0..1, исключая.

Может ли кто-нибудь помочь мне понять это определение, которое использует Excel?


5
Еще одна отличная иллюстрация, почему бы не использовать Excel для чего-либо статистического. :-)
Уэйн

1
Друзья не позволяют друзьям использовать Excel для статистики. Грустно, но правда
Крис Били

Ответы:


11

Как правило, ранг (между и для данных) конвертируется в процент по формуле1 n n pr1nnp

p=100rαn+12α

для некоторой предопределенной «позиции черчения» от до включительно. Решение для с точки зрения дает0 1 r pα01rp

r=(n+12α)(p/100)+α.

Excel исторически используется для своих и функцийα=1PERCENTILEQUARTILE . Документация для QUARTILE.INCи QUARTILE.EXCбесполезно, так что мы должны перепроектировать , что эти функции делают.

Например, с данными , мы имеем и для трех квартилей. Использование в предыдущей формуле дает ранги , и , воспроизводя результаты для .n = 10 p { 25 , 50 , 75 } α = 1 9 ( 0,25 ) + 1 = 3,25 9 ( 0,50 ) + 1 = 5,5 9 ( 0,75 ) + 1 =(1,2,3,4,5,6,7,8,9,10)n=10p{25,50,75}α=19(0.25)+1=3.259(0.50)+1=5.59(0.75)+1=7.75QUARTILE.INC

Если вместо этого мы установим соответствующие ранги будут , и , воспроизводя результаты для .11 ( 0,25 ) = 2,75 11 ( 0,50 ) = 5,5 11 ( 0,75 ) = 8,25α=011(0.25)=2.7511(0.50)=5.511(0.75)=8.25QUARTILE.EXC

Дальнейшее тестирование с вашей стороны (у меня нет последней версии Excel) может установить обоснованность моего предположения о том, что эти две версии функции квартиля определяются этими двумя (крайними) значениямиα .

Кстати, дробные ранги конвертируются в значения данных с помощью линейной интерполяции. Процесс объяснен и проиллюстрирован в моих заметках к курсам Percentiles и EDF Plots - смотрите в нижней части этой страницы. Существует также ссылка на электронную таблицу Excel, иллюстрирующую расчеты.

Если вы хотите реализовать функцию общего процентиля в Excel , вот макрос VBA для этого:

'
' Converts a percent, computed using plotting position constant A,
' into a percent appropriate for the Excel Percentile() and
' Quartile() functions.  (The default value of A for Excel is 1;
' most values in use are between 0 and 0.5.)
'
Public Function PercentileA(P As Double, N As Integer, A As Double) As Double
    If N < 1 Or A < 0# Or A > 1# Or P < 0# Or P > 1# Then
        Exit Function
    End If
    If N < 2 Then
        PercentileA = 0.5
    Else
        PercentileA = ((N - 2 * A + 1) * P + A - 1) / (N - 1)
    End If
End Function

Он преобразует номинальный процент (например, 25/100) в процент, который заставит PERCENTILEфункцию Excel вернуть желаемое значение. Он предназначен для использования в формулах клеток, как в =PERCENTILE(Data, PercentileA(0.25, Count(Data), 0.5)).


Обратите внимание: как только вы точно поймете, что делает Excel, вы можете эффективно использовать его для статистической работы.
whuber

5
Если я с юмором могу не согласиться с вашим комментарием: Excel можно эффективно использовать для статистической работы, если вы статистический мастер, который может из первых принципов доказать, что должно быть сделано, то перепроверьте методы Excel, чтобы определить, что он на самом деле делает. Когда вы так хороши, большинство любого инструмента подойдет. Хотя я бы также отметил, что в этой теме 100% мастеров, участвующих в этом обсуждении, до сих пор не имеют доступа к последней версии Excel, поэтому вряд ли будут ее использовать.
Уэйн

Прикоснись, @Wayne. (Но некоторые из нас все еще используют старые версии Excel :-).)
whuber

1
Whuber, спасибо, что поделились решением VBA. Это будет очень полезно. Как человек, которому нужно делать статистику, но застрял с Excel как единственным легкодоступным инструментом (да, я пробовал R, но не могу полностью разобраться с этим), я ценю инструменты, которые помогут согнуть Excel под мои нужды.
Дав

4

Мне кажется, что Excel quartile.incсогласен с оригиналом quartile, который согласен с R по умолчанию и другими определениями.

С полезной подсказкой от whuber я обнаружил, что Excel, quartile.excпохоже, согласен (в случае 1..10) с type=6определением R квантиля:

   > For types 4 through 9, Q[i](p) is a continuous function of p, with
    > gamma = g and m given below. The sample quantiles can be obtained
    > equivalently by linear interpolation between the points (p[k],x[k])
    > where x[k] is the kth order statistic. Specific expressions for p[k]
    > are given below.
    > 
    > ...
    > 
    > 
    > Type 6 m = p
    >       .p[k] = k / (n + 1). Thus p[k] = E[F(x[k])].
    >       This is used by Minitab and by SPSS.

Что, по-видимому, и дает ответ на ваш вопрос: «Да, Minitab и SPSS делают».


Разве у R нет девяти определений квантилей? (+1 для редактирования, кстати)
whuber

@whuber: Не обращай внимания на человека за занавесом! (Я отредактирую свой ответ. При дальнейшем рассмотрении он совпадает с одним из других определений R, которое, очевидно, используют Minitab и SPSS. Спасибо!)
Уэйн

2

Я думаю, что исключительный вкус квартиля просто игнорирует 5 и 37 (мин и макс в ваших исходных данных).

В Stata обе версии по умолчанию и альтернативные версии предоставляют значения quartile.exc с этими данными.


Это предположение кажется несовместимым с документацией, в которой утверждается, что max и min действительно могут быть возвращены QUARTILE.EXC.
whuber

В моей версии Excel 2010 QUARTILE.EXC (диапазон ячеек, k) вернет #NUM! если k = {1,2,3}, которые соответствуют 25-му, 50-му и 75-му процентилям в соответствии с всплывающим меню, которое появляется. Исходный QUARTILE также примет 0 и 4 в качестве второго аргумента, что соответствует минимуму и максимуму.
Дмитрий Владимирович Мастеров

1
В документации говорится: «Если quart ≤ 0 или quart ≥ 4, QUARTILE.EXC возвращает значение ошибки #NUM!». Это кажется правдой. Второе утверждение «MIN, MEDIAN и MAX возвращает то же значение, что и QUARTILE.EXC, когда значение quart равно 0 (ноль), 2 и 4 соответственно», отображается как ложное, если я что-то пропустил. Какой беспорядок!
Дмитрий Владимирович Мастеров

nn11#NUM!PERCENTILE

1
3 вкуса процентиля для меня ведут себя так же, как квартиль. Для данных 5-37 PERCENTILE.EXC (диапазон, k) дает #NUM! для k = {0,1}. Для k = 0,25 PERCENTILE.EXC дает 10. Если я выбрасываю 5 и 37, это дает 10,5, что согласуется с двумя другими способами.
Дмитрий Владимирович Мастеров

2

Множество интересных подробностей, но если вернуться к исходному вопросу, я не вижу, чтобы два немного отличающихся способа, которые могли бы не дать точно такой же ответ, действительно имеют значение. Первый показатель - это точка, в которой 25% наблюдений приходится на нее или ниже. В зависимости от размера выборки это может быть или не быть точной точкой в ​​данных. Таким образом, если одна точка находится ниже, а вторая выше, этот первый квартиль не очень хорошо определен, и любая точка между этими двумя может служить одинаково хорошо. То же самое верно для медианы, когда размер выборки является четным. Правило выбирает среднюю точку между точками данных ниже и выше. Но на самом деле ничто не говорит о том, что выбор, данный правилом, действительно лучше, чем любой другой пункт.


α1/31/2

0

Для тех из вас, кто действительно использует Excel, здесь есть хорошее описание различных методов версий: http://peltiertech.com/WordPress/comparison/


2
Было бы лучше, если бы вы суммировали их в своем ответе. Хотя ссылка может ответить на вопрос, который они иногда устаревают, в этом случае ваш ответ не будет полезным для будущих читателей.
Энди

0

В Excel 2016 я заметил, что правильные значения квартилей можно получить, если:

  • набор данных имеет нечетное количество записей: используйте QUARTILE.EXC
  • набор данных имеет четное количество записей: используйте среднее из QUARTILE.EXC и QUARTILE.INC

1
Учитывая, сколько определений квантилей существует, о чем свидетельствуют некоторые другие ответы, можете ли вы объяснить, что вы подразумеваете под правильными значениями?
августа
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.