Buenas tardes a todo el mundo, El motivo de que me dirija al foro es que no s�
c�mo a�adir unas determinadas filas en un data table seg�n el identificador de
sujeto. Adem�s, quisiera hacerlo sin recurrir a ning�n paquete de R adicional
del tipo plyr, dplyr, etc. (no s� si esto es posible). EJEMPLO:
require(data.table) DT <- data.table( id = rep(c(1,8,17),c(2,2,1)), start =
as.Date(rep(c('2005-02-27','2006-07-17','2005-05-30'),c(2,2,1))), dreg =
as.Date(c('2006-04-20','2007-02-19','2008-01-15','2008-01-29','2006-02-05')),
valor = rep(c(24,15,32),c(2,2,1)), end =
as.Date(rep(c('2007-05-15','2008-02-05','2007-12-31'),c(2,2,1))) ) id
start dreg valor end1: 1 2005-02-27 2006-04-20 24 2007-05-152:
1 2005-02-27 2007-02-19 24 2007-05-153: 8 2006-07-17 2008-01-15 15
2008-02-054: 8 2006-07-17 2008-01-29 15 2008-02-055: 17 2005-05-30
2006-02-05 32 2007-12-31 Mi objetivo es crear un nuevo data table tal que en
cada �id� se a�adan tantas filas como 31�s de diciembre hayan comprendidos
entre sus respectivas variables start y end: id start dreg valor
end1: 1 2005-02-27 2005-12-31 24 2007-05-152: 1 2005-02-27
2006-04-20 24 2007-05-153: 1 2005-02-27 2006-12-31 24 2007-05-154: 1
2005-02-27 2007-02-19 24 2007-05-155: 8 2006-07-17 2006-12-31 15
2008-02-056: 8 2006-07-17 2007-12-31 15 2008-02-057: 8 2006-07-17
2008-01-15 15 2008-02-058: 8 2006-07-17 2008-01-29 15 2008-02-059: 17
2005-05-30 2005-12-31 32 2007-12-3110: 17 2005-05-30 2006-02-05 32
2007-12-3111: 17 2005-05-30 2006-12-31 32 2007-12-31 Los nuevos valores de
la variable dreg se obtendr�an aproximadamente como:dreg =
as.Date(paste0(drang[1L]:(drang[2L] - 1), '-12-31')), donde drang me da el
m�ximo y m�nimo valor de a�o (no s� si con un bucle?) para cada individuo
(seg�n start y end) . Muchas gracias!
[[alternative HTML version deleted]]
_______________________________________________
R-help-es mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-help-es