Ваш учебник запутался. Очень немногие люди или программное обеспечение определяют квартили таким образом. (Это делает первый квартиль слишком маленьким, а третий квартиль слишком большим.)
quantile
Функция R
реализует девять различных способов вычислительных квантилей! Чтобы увидеть, какие из них, если таковые имеются, соответствуют этому методу, давайте начнем с его реализации. Из описания мы можем написать алгоритм сначала математически, а затем в R
:
Порядок данных .Икс1≤ х2≤ ⋯ ≤ xN
Для любого набора данных медиана является его средним значением, когда существует нечетное число значений; в противном случае это среднее двух средних значений при четном числе значений. R
«S median
функция вычисляет это.
Индекс среднего значения равен . Когда это не является целым числом, является медианой, где и являются закругленные вниз и вверх. В противном случае, когда является целым числом, является медианой. В этом случае возьмите и . В любом случае - это индекс значения данных непосредственно слева от медианы, а - индекс значения данных непосредственно справа от медианы.( x l + x u ) / 2 l u m m x m l = m - 1 u = m + 1 l uм = ( н + 1 ) / 2( хL+ хU) / 2LUммИксмl = m - 1и = м + 1LU
«Первый квартиль» - это медиана всех для которых . «Третий квартиль» - это медиана для которой . i ≤ l ( x i ) i ≥ uИксяя ≤ л( хя)я ≥ у
Вот реализация. Это может помочь вам сделать упражнения в этом учебнике.
quart <- function(x) {
x <- sort(x)
n <- length(x)
m <- (n+1)/2
if (floor(m) != m) {
l <- m-1/2; u <- m+1/2
} else {
l <- m-1; u <- m+1
}
c(Q1=median(x[1:l]), Q3=median(x[u:n]))
}
Например, вывод quart(c(6,7,8,9,10,15,16,16,20,20,23,33,50,58,104))
соглашается с текстом:
Q1 Q3
9 33
Давайте вычислим квартили для некоторых небольших наборов данных, используя все десять методов: девять R
и учебники:
y <- matrix(NA, 2, 10)
rownames(y) <- c("Q1", "Q3")
colnames(y) <- c(1:9, "Quart")
for (n in 3:5) {
j <- 1
for (i in 1:9) {
y[, i] <- quantile(1:n, probs=c(1/4, 3/4), type=i)
}
y[, 10] <- quart(1:n)
cat("\n", n, ":\n")
print(y, digits=2)
}
Запустив это и проверив, вы обнаружите, что значения учебника не соответствуют ни одному из R
выходных данных для всех трех размеров выборки. (Модель разногласий продолжается в циклах третьего периода, показывая, что проблема сохраняется независимо от размера выборки.)
Учебник, возможно, неправильно истолковал метод вычисления «петель» Джона Тьюки (он же «четверти»). Разница заключается в том, что при разделении набора данных вокруг медианы он включает медиану в обеих половинах. Это даст и для примера набора данных.289,528
quantile
типы 1, 2 и 6 будут воспроизводить их для набора данных этого конкретного размера . Ни один изR
методов не соответствует вашему учебнику. (Интересно о качестве этого текста ...)