Ich habe umfangreich gesucht, aber keine Antwort auf diese Frage zu Stack Overflow gefunden.Hinzufügen von Spalten zu einem leeren Datenrahmen in R
Lets sagen, ich habe einen Datenrahmen a.
Ich definiere:
a <- NULL
a <- as.data.frame(a)
Wenn ich als so eine Spalte dieses Datenrahmen hinzufügen wollte:
a$col1 <- c(1,2,3)
ich die folgende Fehlermeldung erhalten:
Error in `$<-.data.frame`(`*tmp*`, "a", value = c(1, 2, 3)) :
replacement has 3 rows, data has 0
Warum ist die Zeilendimension ist fixiert, aber die Spalte nicht?
Wie ändere ich die Anzahl der Zeilen in einem Datenrahmen?
Wenn ich dies tun (die Daten in eine Liste eingegeben und dann zu einem df Umwandlung), es funktioniert gut:
a <- NULL
a$col1 <- c(1,2,3)
a <- as.data.frame(a)
Ich denke, diese Nähe zu dem, was ich bereits getan. Ich dachte, es gäbe eine klügere Lösung als diese. Mir ist klar, dass ich einen Vektor verwende, anstatt ihn einem Datenrahmen hinzuzufügen. Außerdem habe ich wahrscheinlich nicht beschrieben, was ich gut meinte, als ich das Wort fixed benutzte. Die Zeilendimension kann nicht einfach wie die Spaltendimension geändert werden. – Michal
Es ist auch die gleiche Antwort wie folgt: http://stackoverflow.com/questions/7962267/cbind-a-df-with-an-empty-df-cbind-fill – Michal