Foro de debate

Unir o sumar series. condiciones complejas

Unir o sumar series. condiciones complejas

de skan skan -
Número de respuestas: 0
Buenas

Tengo unos 40 archivos cuyo contenido tiene este formato


Fechayhora dato

1990-01-01 10:00:00 , 0.900
1990-01-01 10:01:00 , 0.910
1990-01-01 10:03:00 , 0.905
1990-01-01 10:04:00 , 0.905
1990-01-01 10:05:00 , 0.890

Algunos datos pueden no existir y en los diferentes archivos los datos pueden tener diferentes frecuencias.
Quisiera juntar los datos, por ejemplo sumando los que coincidan en hora. Supongo que debo usar zoo o timeseries.

Para leerlo debería usar algo así:
tmp <- read.table("demo2.txt", sep = ",")
z <- zoo(tmp[, 2], as.Date(as.chron(tmp[, 1]), format = "%Y-%m-%d %H:%M:%S"))
ó así
z <- read.zoo(textConnection(Lines), index = 1:2, FUN = function(x)
as.chron(paste(x[,1], x[,2])))

Ahora para poder sumar las series... supongo que debo crear un objeto zoo de fechasyhoras con frecuencia igual al MCD de todas las que tengo, y hacer un merge de cada serie con ese nuevo objeto para así conseguir una serie con valores donde no teniamos. Luego sustituir los valores inexistentes por el ultimo valor valido.
Luego sumar las diferentes series. NO sé si con rowsums o simplemente "+"
¿Algún comentario sobre todo esto?

Y ahora viene lo que no tengo ni idea...
¿Cómo recorro los datos para hacer lo siguiente?

cada dia:
guardo el primer dato del dia -> datoini
recorro todos los demas datos del dia hasta que
datoini-datoini >= valor y guardo ese dato en datodia
o si no se cumple nunca esa condicion datodia=ultimo dato del dia
y obtengo la suma de todos los datodia de todos los dias de la serie.

¿Cómo hago eso con un bucle?
¿Cómo lo hago con aggregate?

gracias

saludos