Trovare quartili in R


33

Sto lavorando a un manuale di statistiche mentre apprendo R e ho incontrato un ostacolo sul seguente esempio:

inserisci qui la descrizione dell'immagine

Dopo aver guardato ?quantileho provato a ricreare questo in R con il seguente:

> nuclear <- c(7, 20, 16, 6, 58, 9, 20, 50, 23, 33, 8, 10, 15, 16, 104)
> quantile(nuclear)
   0%   25%   50%   75%  100% 
  6.0   9.5  16.0  28.0 104.0 

Dato che il testo e R hanno risultati diversi, sto rilevando che R sta utilizzando la mediana nel calcolo del primo e del terzo quartile.

Domanda:

Dovrei includere la mediana nel calcolo del primo e del terzo quartile?

Più specificamente, il libro di testo o R ha questo corretto? Se il libro di testo ha questo corretto, c'è un modo per farlo correttamente in R?

Grazie in anticipo.

r  quantiles 

6
Alcuni thread qui discutono i molti modi in cui i quantili possono essere calcolati o stimati. Eccone uno con una risposta autorevole , ma altri sono disponibili cercando nel nostro sito. In breve, il tuo libro di testo sembra presentare un metodo non standard di calcolo dei quartili, ma i quantiletipi 1, 2 e 6 li riprodurranno per un set di dati di queste dimensioni particolari . Nessuno dei Rmetodi corrisponde al tuo libro di testo. (Uno si domanda sulla qualità di questo testo ...)
whuber

@whuber Grazie per questo commento, mi è stato di grande aiuto poiché temo di non avere il background tecnico per distinguere esattamente cosa quantilestanno facendo i diversi tipi .

@whuber: è chiaramente non standard (che è probabilmente menzionato da qualche parte nel libro), ma non intuitivo. Pensi che sia sbagliato matematicamente?
Michael M,

6
n

1
R utilizza nove diverse definizioni di quantili (per impostazione predefinita utilizza la definizione 7). Vedi?quantile
Glen_b -Reinstate Monica

Risposte:


43

Il tuo libro di testo è confuso. Pochissime persone o software definiscono i quartili in questo modo. (Tende a rendere il primo quartile troppo piccolo e il terzo quartile troppo grande.)

La quantilefunzione Rimplementa nove modi diversi per calcolare i quantili! Per vedere quale di essi, se presente, corrisponde a questo metodo, iniziamo implementandolo. Dalla descrizione possiamo scrivere un algoritmo, prima matematicamente e poi in R:

  1. x1x2xn

  2. Per ogni set di dati la mediana è il suo valore medio quando c'è un numero dispari di valori; altrimenti è la media dei due valori medi quando c'è un numero pari di valori. RLa medianfunzione calcola questo.

    m=(n+1)/2(xl+xu)/2lummxml=m1u=m+1lu

  3. xiil(xi)iu

Ecco un'implementazione. Può aiutarti a fare i tuoi esercizi in questo manuale.

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]))
}

Ad esempio, l'output di è d' quart(c(6,7,8,9,10,15,16,16,20,20,23,33,50,58,104))accordo con il testo:

Q1 Q3 
 9 33 

Calcoliamo i quartili per alcuni piccoli set di dati usando tutti e dieci i metodi: i nove in Re i libri di testo:

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)
}

Quando lo esegui e controlli, scoprirai che i valori del libro di testo non coincidono con nessuno degli Routput per tutte e tre le dimensioni del campione. (Il modello delle divergenze continua nei cicli del terzo periodo, dimostrando che il problema persiste, indipendentemente dalla dimensione del campione.)

9.528


3
Un grande ringraziamento per una risposta così dettagliata e per avermi fornito gli strumenti per lavorare da solo e valutare i diversi metodi. Ora li accenderò e esaminerò le cose in modo più dettagliato.

2

Nel campo della statistica (che insegno, ma in cui non sono un ricercatore), i calcoli dei quartili sono particolarmente ambigui (in un modo che non è necessariamente vero per i quantili, più in generale). Questo ha molta storia alle spalle, in parte a causa dell'uso (e forse dell'abuso) dell'intervallo quartile (IQR), che è insensibile ai valori anomali, come controllo o alternativa alla deviazione standard. Rimane un concorso aperto, con tre metodi distintivi per calcolare Q1 e Q3 che sono co-canonici.

Come spesso accade, l'articolo di Wikipedia ha un riassunto ragionevole: https://en.m.wikipedia.org/wiki/Quartile Il testo di Larson e Farber, come la maggior parte dei testi statistici elementari, utilizza ciò che è descritto nell'articolo di Wikipedia come " Metodo 1. " Se seguo le descrizioni sopra, r usa "Metodo 3". Dovrai decidere tu stesso che è canonicamente appropriato nel tuo campo.


Ottieni buoni punti (+1). Ma dato che i riferimenti per "Metodo 1" sono la calcolatrice TI-83 e Excel (la cui mancanza di credibilità è ben nota), che questo metodo è dimostrabilmente distorto e che non è più difficile da calcolare rispetto ai cardini di Tukey, sarebbe sembra difficile giustificare o raccomandare il suo utilizzo.
whuber
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.