Gibt es einen Befehl, um den Standardfehler des Mittelwerts in R zu finden?
quelle
Gibt es einen Befehl, um den Standardfehler des Mittelwerts in R zu finden?
Der Standardfehler ist nur die Standardabweichung geteilt durch die Quadratwurzel der Stichprobengröße. So können Sie ganz einfach Ihre eigene Funktion erstellen:
> std <- function(x) sd(x)/sqrt(length(x))
> std(c(1,2,3,4))
[1] 0.6454972
Der Standardfehler (SE) ist nur die Standardabweichung der Stichprobenverteilung. Die Varianz der Stichprobenverteilung ist die Varianz der Daten geteilt durch N und die SE ist die Quadratwurzel davon. Aus diesem Verständnis geht hervor, dass es effizienter ist, Varianz in der SE-Berechnung zu verwenden. Die sd
Funktion in R führt bereits eine Quadratwurzel aus (Code für sd
ist in R und wird durch Eingabe von "sd" angezeigt). Daher ist das Folgende am effizientesten.
se <- function(x) sqrt(var(x)/length(x))
Um die Funktion nur ein bisschen komplexer zu gestalten und alle Optionen zu verarbeiten, an die Sie übergeben können, var
können Sie diese Änderung vornehmen.
se <- function(x, ...) sqrt(var(x, ...)/length(x))
Mit dieser Syntax kann man beispielsweise den var
Umgang mit fehlenden Werten nutzen. var
In diesem se
Aufruf kann alles verwendet werden, was als benanntes Argument übergeben werden kann .
stderr
ein Funktionsname in istbase
.stderr
berechnet NICHT den angezeigten Standardfehlerdisplay aspects. of connection
stderr
, dass er den Standardfehler berechnet, er warnte, dass dieser Name in base verwendet wird, und John hat seine Funktion ursprünglich benanntstderr
(überprüfen Sie den Bearbeitungsverlauf ...).Eine Version von Johns Antwort oben, die die lästigen NAs entfernt:
quelle
stderr
imbase
Paket eine Funktion vorhanden ist , die etwas anderes ausführt. Daher ist es möglicherweise besser, einen anderen Namen für diesen zuse
Der Paket-Sciplot hat die eingebaute Funktion se (x)
quelle
Da ich ab und zu auf diese Frage zurückkehre und diese Frage alt ist, veröffentliche ich einen Benchmark für die am häufigsten bewerteten Antworten.
Beachten Sie, dass ich für die Antworten von @ Ian und @ John eine andere Version erstellt habe. Anstatt zu verwenden
length(x)
, habe ich verwendetsum(!is.na(x))
(um NAs zu vermeiden). Ich habe einen Vektor von 10 ^ 6 mit 1.000 Wiederholungen verwendet.Ergebnisse:
quelle
Im Allgemeinen können Sie für Standardfehler bei anderen Parametern das Boot-Paket für Bootstrap-Simulationen verwenden (oder diese selbst schreiben).
quelle
Sie können die Funktion stat.desc aus dem Pastec-Paket verwenden.
Weitere Informationen finden Sie hier: https://www.rdocumentation.org/packages/pastecs/versions/1.3.21/topics/stat.desc
quelle
sd(y)
für Standardabweichungvar(y)
für Varianz.Beide Ableitungen werden
n-1
im Nenner verwendet, sodass sie auf Beispieldaten basieren.quelle