2016-04-11 20 views
-2

Ich verwende die "Quantil" -Funktion von R für die Berechnung der Perzentile meines Datensatzes. Aber ich bin verwirrt wegen der verschiedenen Mittelwerte, die von folgenden Befehlen zurückgegeben werden.Verschiedene Mittelwerte aus Mittelwert (Quantil()) und Mittelwert() in R

mean(quantile(DataSet$V3, prob=c(5,50,95)/100,type=8)); 

Es gibt mir

mean(quantile(DataSet$V3,type=8)); 

Es gibt mir 105.27

Und

mean(DataSet$V3); 

Es gibt mir 109.9

Ich werde wirklich dankbar sein, wenn jemand mir antworten könnte, warum die Mittelwerte in drei Fällen unterschiedlich sind.

Regards, Zoraze

+8

Sie nehmen den Durchschnitt der Ausgabe der Funktion 'quantile()' in den ersten beiden Fällen, was nicht das Gleiche ist wie der Durchschnitt der gesamten Spalte. – mtoto

+0

Vielen Dank für die Antwort, ich habe nicht so gedacht. Schätze deine Hilfe. –

Antwort

1

Die Quantile werden, indem zunächst die Sortierung der Datenvektor in um erhalten, und dann durch prob=quantile() in der Funktion, die Daten in Abschnitte, definiert dividiert wird. die Daten Angenommen

x <- c(9,3,1,10,2) 

wird dann über

> sort(x) 
[1] 1 2 3 9 10 

Der Median hat 50% der Daten unter und 50% gibt es zu bestellen. Hier befindet sich das Datenelement 3 in der Mitte der Liste (3. von jedem Ende). Sie können auch (für längere Listen) berechnen aus mean(x) erhalten

> quantile(x) 
0% 25% 50% 75% 100% 
1 2 3 9 10 

Der Mittelwert verwendet, kann auch durch die Anzahl der Werte

> (1 + 2 + 3 + 9 + 10)/5 
[1] 5 

durch Addition aller Werte und Dividieren von ersten Prinzipien berechnet werden oder die Summe Funktion

> sum(x)/5 
[1] 5 

, um durch den ersten commentor darauf hingewiesen, Berechnung Quantile und Mittel sind völlig verschieden oper Informationen zu den Daten. Dies wird normalerweise in einem einführenden statistischen Textbuch behandelt.

+0

Hallo Slouchy, vielen Dank für deine ausführliche Antwort, ich wusste, wie die Quantil-Funktion die Perzentile berechnet, aber ich dachte nicht, dass mein (Quantil (DataSet $ ​​V3, prob = c (5,50,95)/100) , type = 8)) gibt nur den Durchschnittswert (5%, 50% und 95%) zurück. Noch einmal vielen Dank. –

+0

In R können Sie eine verschachtelte Reihe von Funktionen "auspacken", so dass das Quantil (...) die erste Sache ist, dann bedeutet mean (Quantil (...)) die Mittelwertfunktion auf das Ergebnis der Quantilsfunktion. Ein bisschen wie eine Zwiebel schälen. So funktioniert der (umgekehrte) Polierrechner und wurde auch als "funktionale Programmierung" bezeichnet. Diese Art des Denkens steht hinter ultra-nützlichen Funktionen "apply" und "sapply" in R - also google sie, um das breite Konzept besser zu verstehen. – slouchy

Verwandte Themen