[R-br] Execução do comando 'rle'
SILVIA PATRICIA BARRETO SANTANA
silpat em ufrb.edu.br
Sexta Abril 24 11:08:31 BRT 2015
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
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150424/3a7f76c3/attachment.html>
Mais detalhes sobre a lista de discussão R-br