So, dann habe ich mir doch mal Deine "Problembeschreibung" durchgelesen - die passt tatsächlich nicht zu meinem Lösungsvorschlag !
rbindlist hängt datatables mit "verwandter" Struktur hintereinander, Du willst ja offenbar eine bestehende Datei "horizontal" um neue Inhalte erweitern...
Gibt es eigentlich eine Variable(ngruppe), die die in den Dateien beschriebenen Objekte eindeutig identifiziert und in allen Dateien vorhanden ist - was in meinen Augen "normal" wäre?
Funktion zum Datenimport
Re: Funktion zum Datenimport
Code: Alles auswählen
if (!(Masterlist[i] %in% names(DF))) paste0("DF$",Masterlist[i]) <- "NA"
Code: Alles auswählen
if (!(Masterlist[i] %in% names(DF))) DF$[[Masterlist[i]]] <- "NA"
LG,
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: Funktion zum Datenimport
Hallo Jörg,
ja, das war ein Schreibfehler von mir. Dieser Fehler ist vor allem dadurch bedingt, dass es bei Der Frage keine Beispieldaten gab, mit denen man den Code hätte ausprobieren könne. Bei vorhandenen Beispieldaten wäre einem der Syntaxfehler sofort aufgefallen.
Gruß, Jörg
ja, das war ein Schreibfehler von mir. Dieser Fehler ist vor allem dadurch bedingt, dass es bei Der Frage keine Beispieldaten gab, mit denen man den Code hätte ausprobieren könne. Bei vorhandenen Beispieldaten wäre einem der Syntaxfehler sofort aufgefallen.
... meine Nachricht habe ich entsprechend geändert.Jörg hat geschrieben: ↑Sa Sep 07, 2019 6:36 pm Bei mit funktioniert diese Zeile nichtaber das geht:Code: Alles auswählen
if (!("Var3" in names(DF))) DF$Var3 <- "NA"
Und so passt das dann alles, vielen Dank!Code: Alles auswählen
if (!("Var3" %in% names(DF))) DF$Var3 <- "NA"
Wegen "nr": Da die Daten aus unterschiedlichen Quellen kommen, wollte ich zwei Arten von fehlenden Werten unterscheiden. "nr" wenn eine Variable im Quelldatensatz gar nicht erhoben wurde und NA dann, wenn sie grundsätzlich erhoben wurde, aber in einzelnen Fällen fehlt. Aber Bernhard hat natürlich recht, das wäre ein Problem mit numerischen Variablen. Da R ja nur NA für fehlende Werte kennt, muss ich das wohl über eine zusätzliche Variable lösen.
Gruß, Jörg
Re: Funktion zum Datenimport
Hallo Bernhard,
mit einer kleinen Abwandlung funktioniert der Code so
Das $-Zeichen war da noch zuviel. Ich nehme mir Jörg's Hinweis für das nächste Mal zu Herzen.
lg jörg
mit einer kleinen Abwandlung funktioniert der Code so
Code: Alles auswählen
if (!(Masterlist[i] %in% names(DF))) DF[[Masterlist[i]]] <- "NA"
lg jörg
Re: Funktion zum Datenimport
Bekomme ich noch eine Antwort auf meine Frage ?Gibt es eigentlich eine Variable(ngruppe), die die in den Dateien beschriebenen Objekte eindeutig identifiziert und in allen Dateien vorhanden ist - was in meinen Augen "normal" wäre?
Re: Funktion zum Datenimport
Sorry für die späte Antwort, ja diese Variablengruppe gibt es.