[R-br] Execução do comando 'rle'
Éder Comunello
comunello.eder em gmail.com
Sexta Abril 24 12:33:02 BRT 2015
Nesse caso pode usar as posições ini e fim armazenadas no objeto res.
res$nivel <- sapply(seq(res), function(x) {
sel <- seq(res$ini[x], res$fim[x])
print(mean(dat[sel,2]))
})
# lengths values ini fim timeDiff nivel
# 1 2 0 1 2 60 secs 29.0
# 2 2 1 3 4 60 secs 30.5
# 3 4 0 5 8 180 secs 29.0
# 4 5 1 9 13 240 secs 33.2
# 5 1 0 14 14 0 secs 25.0
Éder Comunello <c <comunello.eder em gmail.com>omunello.eder em gmail.com>
Dourados, MS - [22 16.5'S, 54 49'W]
2015-04-24 10:08 GMT-04:00 SILVIA PATRICIA BARRETO SANTANA <
silpat em ufrb.edu.br>:
> Bom dia pessoal,
>
> Dentro da mesma análise de dados (abaixo) é possível obter as médias de
> valores (Variável "Nivel") utilizando o comando "rle" para cada execução
> do Status e guardar estas informações (lengths, values, timediff, meanNivel
> ) em outro banco?
>
> ### <code r>
> dat <- read.table(text='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', head=T, as.is=T)
>
> dat$Horario <- as.POSIXlt(dat$Horario, format = '%d/%m/%Y %H:%M')
> head(dat)
>
> res <- do.call(data.frame, rle(dat$Status))
> n <- nrow(res)
> res$ini <- c(1, cumsum(res$lengths[-n])+1)
> res$fim <- cumsum(res$lengths)
> res$timeDiff <- with(res, dat[fim,1]-dat[ini,1])
>
> res
>
>
> # lengths values ini fim timeDiff
> # 1 2 0 1 2 60 secs
> # 2 2 1 3 4 60 secs
> # 3 4 0 5 8 180 secs
> # 4 5 1 9 13 240 secs
> # 5 1 0 14 14 0 secs
>
>
>
> Grata,
>
> Silvia Patricia
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150424/76ec791d/attachment.html>
Mais detalhes sobre a lista de discussão R-br