Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ALINEA c)
- vpnsessionsC = vpnsessions
- #inicio:
- vpnsessionsC$inicio_full <- as.POSIXlt(paste(vpnsessionsC$data, vpnsessionsC$inicio), format="%Y-%m-%d %H:%M")
- #fim:
- vpnsessionsC$fim_full <- as.POSIXlt(paste(vpnsessionsC$data, vpnsessionsC$inicio), format="%Y-%m-%d %H:%M") + vpnsessionsC$duracao * 60
- subset_c = subset(vpnsessionsC, as.Date(data) >= (as.Date("2017-12-01", format="%Y-%m-%d")) &
- as.Date(data) <= (as.Date("2017-12-31", format="%Y-%m-%d"))
- & servidor == 'vsrv16')
- #fun??o que calcula taxa falhas di?ria por minuto para um dia
- calc_taxa_falha_diaria = function(dados, start, end) { #formato data/hora
- start_time = as.POSIXlt(start, format="%Y-%m-%d %H:%M")
- end_time = as.POSIXlt(end, format="%Y-%m-%d %H:%M")
- #subset do dia pretendido:
- subset_day = subset(dados, as.POSIXlt(inicio_full, format="%Y-%m-%d %H:%M")>=start_time
- & as.POSIXlt(inicio_full, format="%Y-%m-%d %H:%M")<=end_time)
- up = nrow(subset(subset_day, duracao > 1))
- down = nrow(subset(subset_day, duracao < 2))
- deltaT = 1440 / (up + down)
- tempoOp = up * deltaT
- taxaFalha = down / tempoOp
- return (taxaFalha)
- }
- #fun??o que calcula vetor taxas de falha di?rias para um determinado m?s (dados = subset de um m?s)
- taxas_diarias_mensal = function(dados, start, end){ #formato y-m-h
- taxas_diarias = c()
- dia = 0 #so para ver progresso
- start_date = as.Date(start)
- end_date = as.Date(end)
- while(start_date<=end_date){
- start_time = paste(start_date, "00:00")
- end_time = paste(start_date, "23:59")
- lambda = calc_taxa_falha_diaria(dados, start_time, end_time)
- taxas_diarias = c(taxas_diarias, lambda)
- start_date = start_date + 1
- }
- return (taxas_diarias)
- }
- array_lambdas = taxas_diarias_mensal(subset_c,"2017-12-01", "2017-12-31")
- t.test(array_lambdas, alternative='less', mu = 0.01, conf.level = 0.95)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement