Letzte nach Gruppe für alle Spalten data.table
Ich war überrascht, Folgendes zu tun:
R) system.time(lastOrder <- order[,lapply(.SD,tail,1),by="TRADER_ID,EXEC_IDATE"]);
utilisateur système écoulé
1.45 0.00 1.53
R) nrow(order)
[1] 75301
R) ncol(order)
[1] 23
Dachte es wäre sehr lang, dann tat ich es
R) system.time(lastOrder <- order[,list(test=tail(EXEC_IDATE,1)),by="TRADER_ID,EXEC_IDATE"]);
utilisateur système écoulé
0.14 0.00 0.14
Soweit ich weiß, sollte die Anwendung auf alle Spalten 10x länger sein, wenn Sie wissen, dass alle Zeilen ausgewählt und die meiste Arbeit ausgeführt wurde. Mache ich beim ersten Codebit etwas falsch? Nur so kann ich die letzten Zeilen nach Gruppe auswählen