R: Berechnen Sie die Standardabweichung in Spalten in eine Daten.Rahmen trotz der NA-Werte
Guten Morgen,
Ich habe eine Menge von Daten, und ich habe zu berechnen. Es gibt 25 Spalten (Variablen) und jede Spalte enthält Tausende von Werten. Aber auch fehlende Werte.
Ich berechnete die mittlere mit
colMeans(df, na.rm = TRUE)
Wie kann ich berechnen, die sd in jeder Spalte und ignorieren die NA-Werte?
Relevant: stackoverflow.com/questions/20794284/...
InformationsquelleAutor Ernsthaft | 2016-06-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie versuchen,
Als die Ausgabe von
apply
ist eine matrix, und Sie werden wahrscheinlich haben, um zu transponieren es, eine Direktere und sicherere Möglichkeit ist die Verwendunglapply
odersapply
wie bereits von @docendodiscimus,2 bedeutet, dass wir die Iteration über alle Spalten der Daten-frame. Wenn wir eine 1 haben, dann sind wir Durchlaufen der Zeilen und 1:2 über jeden einzelnen Wert
ok, das war neu und interessant für mich. Danke für Hilfe für einen Anfänger 🙂
Achten Sie bei der usng
apply
auf einedata.frame
da wandelt es zu matrix, was wiederum kann dazu führen, unerwartete Art Zwang. Zum iterieren über die Daten.Rahmen, Spalten, es ist in der Regel sichererlapply
odersapply
, d.h.sapply(df, sd, na.rm = TRUE)
welche Art der Typumwandlung kann man realistisch erwarten? Man muss in der Regel nicht berechnen die Standardabweichung von Merkmalen/Faktoren?
InformationsquelleAutor Sotos
Wenn wir konvertieren
matrix
,colSds
ausmatrixStats
verwendet werden kannOder wir verwenden
summarise_each
ausdplyr
InformationsquelleAutor akrun
Als functioin
summarise_each()
ist veraltet, hier ist ein up-to-date-Beispiel mitdplyr
:InformationsquelleAutor Dan
Dies funktioniert für mich. Ersetzen " "variablename" mit der variable, die Sie verwenden.
InformationsquelleAutor Cindy Wang