Ich habe einen unerwarteten [für mich mindestens] Fehler bei der Berechnung einer Standardabweichung. Die Idee [*] besteht darin, alle fehlenden Werte in 1 und 0 umzuwandeln. Extrahieren Sie dann Variablen mit einigen [aber nicht allen] fehlenden Werten, bevor eine Korrelation erfolgt. Dieser Extraktionsschritt wird mit einer SD-Funktion versucht, schlägt jedoch [warum?] Fehl.Standardabweichung auf Datenrahmen funktioniert nicht
library(VIM)
data(sleep) # dataset with missing values
x = as.data.frame(abs(is.na(sleep))) # converts all NA to 1, otherwise 0
y = x[which(sd(x) > 0)] # attempt to extract variables with missing values
Error in is.data.frame(x) :
(list) object cannot be coerced to type 'double'
# convert to double
z = as.data.frame(apply(x, 2, as.numeric))
y = z[which(sd(z) > 0)]
Error in is.data.frame(x) :
(list) object cannot be coerced to type 'double'
[*] R in Aktion, Robert Kabacoff
Danke Joshua. Dies sind ziemlich wichtige Funktionen und es bricht etwas von dem Code, den ich habe. :-(. – Henk
@Henk: Ja, es verursachte Probleme für einige CRAN-Pakete zu der Zeit. –
@Henk Sie können Ihre eigenen "mean.data.frame" und "sd.data.frame" -Funktionen leicht definieren, wenn Sie Ich möchte nicht durch Ihren alten Code gehen und ihn ändern – Roland