
Bom dia pessoal. Tenho pouca experiência em programação no R e qualquer ajuda será bem vinda, por isso já começo agradecendo. Com este banco de dados (abaixo) gostaria de obter a seguinte informação: Horario Nivel Status 01/01/2011 00:00 29 0 01/01/2011 00:01 29 0 01/01/2011 00:02 30 1 01/01/2011 00:03 31 1 01/01/2011 00:04 29 0 01/01/2011 00:05 29 0 01/01/2011 00:06 29 0 01/01/2011 00:07 29 0 01/01/2011 00:08 30 1 01/01/2011 00:09 32 1 01/01/2011 00:10 34 1 01/01/2011 00:11 35 1 01/01/2011 00:12 35 1 01/01/2011 00:13 25 0 ############################ Rotina ########################### ## Leitura do banco de dados Banco_micro<- read.delim("F:/Micro_testeb2.txt", header=TRUE, na.strings="NA", dec=",") ## Variável tempo Banco_micro$Horario Tempo <- strptime(Banco_micro$Horario, format = '%d/%m/%Y %H:%M') Tempo <- as.POSIXlt(Tempo) ## Rotina para obtenção do intervalo de tempo entre as falhas n<-length(Tempo) for (i in 1:n) { if (Banco_micro$Status[i]==1) break Tempo_ini<-Tempo[i+1] } print(Tempo_ini) for (j in (i+1):n) { if (Banco_micro$Status[j]==0) break Tempo_fim<-Tempo[j] } print(Tempo_fim) TempoF<-difftime(Tempo_fim,Tempo_ini,units='mins') TempoF<-as.numeric(TempoF, units="mins") print(TempoF) ######################### A rotina deverá ser capaz de encontrar os intervalos de tempo em que a variavel "Status" permanence no valor 1. A rotina abaixo encontra o primeiro intervalo e pára. O que estou fazendo errado? Obrigada