2016-07-25 36 views
-1

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?

+2

See [die Dokumentationsseite zu diesem Thema] (http://stackoverflow.com/documentation/r/3388/handling-missing-values/11656/basic-usage#t= 201607251849114029215) – Jaap

+2

Definieren Sie die na.strings beim Importieren der Daten. – Roland

+1

Siehe [speziell hier] (http://stackoverflow.com/documentation/r/3388/handling-missing-values/11657/reading-data-with-na-values#t=201607251914346206181). – Axeman

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