Ich habe eine Zählung Datensatz mit einigen fehlenden Variablen mit einem ?
, Bei der Prüfung auf unvollständige Fälle in R sagt, es gibt keine, weil R nimmt die ?
als ein gültiges Zeichen. Gibt es eine Möglichkeit, alle ?
zu NA
s zu ändern? Ich würde gerne mehrere Imputationen mit dem Mäusepaket machen, um die fehlenden Daten danach auszufüllen.Wie kann man Zeichen in NA umwandeln?
-1
A
Antwort
1
Erstellen von Datenrahmen df
df <- data.frame(A=c("?",1,2),B=c(2,3,"?"))
df
# A B
# 1 ? 2
# 2 1 3
# 3 2 ?
I. Mit replace()
Funktion
replace(df,df == "?",NA)
# A B
# 1 <NA> 2
# 2 1 3
# 3 2 <NA>
II. Beim Importieren eine Datei mit ?
data <- read.table("xyz.csv",sep=",",header=T,na.strings=c("?",NA))
data
# A B
# 1 1 NA
# 2 2 3
# 3 3 4
# 4 NA NA
# 5 NA NA
# 6 4 5
+0
Der erste Teil wurde bereits in der anderen Antwort erwähnt. – Jaap
+0
Oh ok, ich entferne es. Danke. –
4
Datenrahmen. Möglicherweise müssen Sie an den Anführungszeichen fummeln. Ich habe das nicht getestet.
df[df == "?"] <- NA
See [die Dokumentationsseite zu diesem Thema] (http://stackoverflow.com/documentation/r/3388/handling-missing-values/11656/basic-usage#t= 201607251849114029215) – Jaap
Definieren Sie die na.strings beim Importieren der Daten. – Roland
Siehe [speziell hier] (http://stackoverflow.com/documentation/r/3388/handling-missing-values/11657/reading-data-with-na-values#t=201607251914346206181). – Axeman