Hola, como estan?

Tengo que hacer una variable y la unica forma que encontre de hacerlo es
con un bucle, lo cual hace que tarde muchisimo.

Para contextualizarlos, tengo una base de alertas(generadas por
determinadas reglas). Yo hice un campo/variable que indica cuanto tiempo
estuvo (una persona que monitorea estas alertas) sin mirar alertas. Este
campo de llama demora. Ademas tengo un campo que tiene el tiempo en el que
la alerta se vio, segundos_hta

Mi data frame se llama alertas_monitoreo. Las variables influyentes son:
segundos: tiene el tiempo en segundos dia*24*60*60+hora*60*60+min*60+seg.
Este tiempo indica el alta de la alerta, es decir cuando se genero la
alerta.
segundos_hta: tiene el tiempo en segundos
dia*24*60*60+hora*60*60+min*60+seg. Este tiempo indica cuando se miro la
alerta, es decir, cuando el muchacho de monitoreo tomo una accion sobre
esta alerta.
demora: tiene el tiempo en segundo que paso entre la accion de la alerta
anterior y la actual.
alerta: todos unos (1).

Finalmente, la variable que genero es, alertas_demora, que tiene las
alertas que se generaron entre el intervalo de tiempo en el que la persona
de monitoreo estuvo inactiva.


n<-nrow(alertas_monitoreo)

for(i in 1:n) {
#me quedo con el tiempo en el que la alerta fue revisada
  t.i <- alertas_monitoreo$segundos_hta[i]
#creo un objeto que contenga el tiempo entre la alerta anterior a esta y
esta, campo demora.
  intervalo<-alertas_monitoreo$demora[i]
  t.ini <- t.i-intervalo   #creo el intervalo de tiempo
  t.fin <- t.i

#me quedo con las alertas entre generadas
  temp<-subset(alertas_monitoreo, segundos >= t.ini & segundos <= t.fin)
  alertas<-sum(temp$alerta)
  alertas_monitoreo$alertas_demora[i]<-alertas
  print(paste("faltan ", n-i,sep=" "))
}




Abrazo

Pablo A. Guzzi
guzzipa@gmail.com

	[[alternative HTML version deleted]]

