-9 in NA umkodieren viele Variablen
-9 in NA umkodieren viele Variablen
Hallo,
ich bin am Aufbereiten eines etwas grosseren Datensatzes, wobei fehlende Werte mit "-9" gekennzeichnet sind. Diese moechte ich in NA umwandeln und habe dies bisher so gemacht:
is.na(csv.setALL$MN01_07)<-which(csv.setALL$MN01_07==-9)
is.na(csv.setALL$MN01_09)<-which(csv.setALL$MN01_09==-9)
is.na(csv.setALL$MN01_12)<-which(csv.setALL$MN01_12==-9)
....
Gibt es eine Moeglichkeit, dies nicht fuer einzelne Variablen zu tun, sondern ueber den gesamten Datensatz alle "-9" in "NA" umzuwandeln?
Nach laengerer Recherche ist die Moeglichkeit, die mir begegnet ist (ich jedoch nicht ganz die Umsetzung sehe) mittels for-Schleife.
Viele Gruessen und Danke!
ich bin am Aufbereiten eines etwas grosseren Datensatzes, wobei fehlende Werte mit "-9" gekennzeichnet sind. Diese moechte ich in NA umwandeln und habe dies bisher so gemacht:
is.na(csv.setALL$MN01_07)<-which(csv.setALL$MN01_07==-9)
is.na(csv.setALL$MN01_09)<-which(csv.setALL$MN01_09==-9)
is.na(csv.setALL$MN01_12)<-which(csv.setALL$MN01_12==-9)
....
Gibt es eine Moeglichkeit, dies nicht fuer einzelne Variablen zu tun, sondern ueber den gesamten Datensatz alle "-9" in "NA" umzuwandeln?
Nach laengerer Recherche ist die Moeglichkeit, die mir begegnet ist (ich jedoch nicht ganz die Umsetzung sehe) mittels for-Schleife.
Viele Gruessen und Danke!
Re: -9 in NA umkodieren viele Variablen
Hallo Zora,
willkommen im Forum!
Du könntest gleich beim Einlesen der Daten den Parameter na.strings= verwenden, z.B.
Gruß, Jörg
willkommen im Forum!
Du könntest gleich beim Einlesen der Daten den Parameter na.strings= verwenden, z.B.
Code: Alles auswählen
read.table(..., na.strings = "-9")
Re: -9 in NA umkodieren viele Variablen
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube
Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube
Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Re: -9 in NA umkodieren viele Variablen
Ich bin ja sonst für Jörgs Ansatz, biete nachrangig aber folgendes Code-Beispiel an (auf Wunsch mit for-Schleife):
Wenn es wirklich um *alle* Spalten geht und alle Spalten Zahlenwerte enthalten, dann geht das unkompliziert, ohne Schleife, so:
(Jörg würde vllt. sagen: "Ist'n Einzeiler")
HTH,
Bernhard
Code: Alles auswählen
bsp <- data.frame(a = c(1,1,1,-9), b = c(-9, -9, -9, -9),
c = c(-9, -9, -9 , -9), d = c(1, -9, 1, -9))
print(bsp)
for(i in c("a", "b", "d")){
bsp[ bsp[,i] == -9, i ] <- NA
}
print(bsp)
Code: Alles auswählen
bsp2 <- data.frame(a = c(1,1,1,-9), b = c(-9, -9, -9, -9),
c = c(4, 3, 2, -9), d = c(1, -9, 1, -9))
print(bsp2)
bsp2 <- apply(bsp2, 1:2, function(wert) if (wert != -9) wert else NA)
print(bsp2)
HTH,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: -9 in NA umkodieren viele Variablen
Hallo Bernhard,
wenn es wirklich um alle Spalten geht, dann doch kurz:
(ja, man glaubt es kaum)
Gruß, Jörg
wenn es wirklich um alle Spalten geht, dann doch kurz:
Code: Alles auswählen
bsp <- data.frame(a = c(1,1,1,-9), b = c(-9, -9, -9, -9),
c = c(-9, -9, -9 , -9), d = c(1, -9, 1, -9))
bsp[bsp==-9] <- NA
Gruß, Jörg
Re: -9 in NA umkodieren viele Variablen
Bring(s)t mich immer wieder zum Staunen. Ob ich das gut finde, dass R mich immer wieder überrascht? Bin mir da nicht so sicher..
Danke für die Nachhilfe,
Bernhard
Danke für die Nachhilfe,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: -9 in NA umkodieren viele Variablen
Hallo Joerg, Bernhard und Student,
vielen Dank fuer eure Hilfe! Neben dem Ueberraschen finde ich R ueberragend darin, mich von einfachen Loesungen, die nicht funktionieren, hin zu komplexen Formeln zu leiten, um dann zu merken, dass die eigentliche Loesung doch einfacher ist, als die zu Beginn bereits einfache Idee.
Viele Gruesse,
Zora
vielen Dank fuer eure Hilfe! Neben dem Ueberraschen finde ich R ueberragend darin, mich von einfachen Loesungen, die nicht funktionieren, hin zu komplexen Formeln zu leiten, um dann zu merken, dass die eigentliche Loesung doch einfacher ist, als die zu Beginn bereits einfache Idee.
Viele Gruesse,
Zora