rbind 'data.tables' und Keep beibehalten

8

Ich suche nach einem ähnlichen Verhalten wie das Einfügen in eine bereits gekeyte SQL-Tabelle, wo die hinzugefügten Zeilen in bestehende Schlüssel eingefügt werden. Zum Beispiel in diesem Fall:

%Vor%

Ich hätte gerne die Möglichkeit, dass dt.2 den Schlüssel "vererbt" (natürlich mit den inkrementellen Daten aktualisiert) von dt , anstatt dass ein Schlüssel tatsächlich passiert.

Ich war zunächst etwas überrascht über den Verlust des Schlüssels, aber das ist eindeutig das dokumentierte Verhalten.

Gibt es eine saubere Methode, dies zu tun, ohne setkey nach jedem rbind / rbindlist ?

aufzurufen     
BrodieG 13.01.2014, 17:02
quelle

1 Antwort

8

Im Wesentlichen unterstützt data.table derzeit überhaupt keine Zeileneinfügung, geschweige denn in eine Schlüsseltabelle. rbind erstellt ein neues data.table und ist daher nicht schnell oder speichereffizient.

Eine ähnliche Frage ist hier:

So löschen Sie eine Zeile als Referenz in data.table?

Derzeit besteht der typische Workflow darin, Dateien mit fread und rbindlist zusammen von der Festplatte zu laden oder Daten aus einer Datenbank mit RODBC oder ähnlichem zu laden.

Wir möchten eine schnelle Zeileneingabe hinzufügen, aber es ist noch nicht fertig.

    
Matt Dowle 13.01.2014, 19:19
quelle

Tags und Links