Während meines Arbeitsablaufs erstelle ich oft eine Kopie der Hauptdatei data.frame/data.table, in der ich einige Aspekte der Arbeit mache, und dann einige andere auf der anderen Kopie, bevor ich sie oder etwas später anschließe auf. Ich habe jedoch oft erlebt, dass diese Kopien noch miteinander verbunden sind. Damit auch auf einem getan Änderungen am other.Unfortunately fertig sind bin ich es zu replizieren, nicht in der Lage, aber kopieren-Einfügen von meiner Konsole sieht es so etwas wie diese:Angeschlossene Kopien von data.tables
# 'used3' is a copy of 'used' with some altercations to it
c("nLocs","nDays") %in% names(used)
[1] FALSE FALSE
> used3[, nDays :=uniqueN(yDay),c("ID","Year","Season")]
> used3[, nLocs :=.N,c("ID","Year","Season")]
> c("nLocs","nDays") %in% names(used)
[1] TRUE TRUE
, so dass auf der Kopie gemacht Änderungen sind allso getan auf dem Original. Ist das ein Fehler? Rufe ich sie zu ähnlichen Namen ... oder was?
R-Version: 3.3 data.table Version: 1.9.6
Aber auch bei älteren Versionen von R erfahren und data.table
Blick auf 'data.table :: copy' – jbaums
Dank! Das war einer dieser "Wie habe ich das vermisst ?!". Sollten Sie es als Antwort hinzufügen, damit ich es akzeptieren kann? –
Siehe auch [this] (http://stackoverflow.com/questions/10225098/understanding-exactly-when-a-data-table-is-a-reference-to-vs-a-copy-of-another) und die verknüpften Fragen. Auch [dies] (http://stackoverflow.com/questions/15913417/why-does-data-table-update-namesdt-by-reference-even-if-i-assign-to-another-v/15913648#15913648) –