split apply recombine, plyr, data.table en R

Estoy haciendo lo clásico dividir-aplicar-recombinar en R. Mi conjunto de datos es un grupo de empresas a lo largo del tiempo. Lo que estoy haciendo es ejecutar una regresión para cada empresa y devolver los residuos, por lo tanto, no estoy agregando por empresa.plyr es genial para esto, pero se necesita mucho tiempo para funcionar cuando el número de empresas es grande. ¿Hay una manera de hacer esto condata.table?

Data de muestra:

dte, id, val1, val2
2001-10-02, 1, 10, 25
2001-10-03, 1, 11, 24
2001-10-04, 1, 12, 23
2001-10-02, 2, 13, 22
2001-10-03, 2, 14, 21

Necesito dividir por cada ID (es decir, 1 y 2). Ejecute una regresión, devuelva los residuos y agregue como una columna a mis datos. ¿Hay una manera de hacer esto usandodata.table?

Respuestas a la pregunta(2)

Su respuesta a la pregunta