Encontre informações sobre o intervalo de dados do Excel. Está em constante crescimento ou cíclico?

2

Eu estou (a curto prazo) monitorando os tamanhos de vários arquivos UNIX e posso facilmente exportar os números para uma planilha do Excel. Os arquivos serão eventualmente indexados pelo Splunk e essa equipe deseja saber o volume diário esperado. No momento, estou amostrando o tamanho dos arquivos a cada hora. Os tamanhos dos meus arquivos geralmente são de dois tipos, em constante crescimento ou cíclicos. Minha definição de cíclica é: os arquivos crescem, depois são redefinidos para o tamanho 0, depois crescem, depois são redefinidos, etc. Um gráfico dos números pode ser definido como um padrão dente de serra.

O Excel pode determinar qual categoria um arquivo pertence, seja em constante crescimento ou cíclica? Os números finais não precisam ser exatos, mas devem dar uma boa ideia do volume diário. (Eu poderia fazer isso manualmente, mas quero que o Excel me permita ser preguiçoso.)

As razões que peço são:

  • Se um arquivo for redefinido para zero, o que acontece normalmente 3 vezes ao dia (mas às vezes com mais frequência), desejo informar a soma dos três maiores tamanhos de arquivo. Como bônus, se as redefinições ocorrerem com mais frequência, talvez o Excel saiba disso e eu possa multiplicar por essa constante.
  • Se um arquivo estiver em constante crescimento, ele é um candidato à rotação do arquivo de log e relatarei a diferença entre o tamanho do arquivo do dia inicial e do final do dia para obter o volume diário. (E veja como executar um script de rotação).
  • Se o tamanho do arquivo nunca mudar, o programa que gera o arquivo precisa ser verificado. Eu posso descobrir isso comparando os valores min () e max ().

Aqui estão alguns dados de amostra extraídos diretamente da minha planilha. Você pode ver as linhas superior e inferior crescer até a quinta coluna, 16:05. É seguro assumir que o tamanho do arquivo foi redefinido para 0 em algum momento após a amostra de 15:55. A linha do meio continua a crescer.

%pr_e%

(Eu traí minha amostra de hora em hora. Eu queria capturar o tempo que as redefinições realmente ocorressem. Agora que eu sei, vou voltar para o monitoramento por hora e recalcular os tempos antigos com os dados que retive. ll monitorar os arquivos por cerca de uma semana.)

A saída que eu vou relatar das linhas um e três será três vezes o máximo, a coluna 15:55 aqui. Na verdade, provavelmente usarei algo como =LARGE(B1:ZZ1,1) + LARGE(B1:ZZ1,2) + LARGE(B1:ZZ1,3) , mas preciso saber que isso é um crescimento cíclico de arquivos.

A saída da linha dois será o tamanho às 23:55 de hoje menos o tamanho às 23:55 de ontem, mas eu preciso saber que isso é um crescimento constante de arquivos.

Então, vou totalizar todos os meus tamanhos para obter um total geral.

    
por IAmJeff 29.04.2015 / 21:44

2 respostas

1

Esse problema parece bem adequado para o Excel. Mas primeiro, deixe-me questionar sua pergunta. Suponha que seus dados sejam assim:

    60     120     180      45      90     135      35      70     105      60

VocêmencionouaseleçãodostrêsmaioresvalorescomLARGE().Ostrêsmaioresvaloresacimasão120,180e135.Éissoquevocêquer,ouvocêquerospicos:180,135e105?Euvoltareiaisso.

Configureumaregiãoretangularcomomesmotamanhoeformatodosseusdados.Podeestarabaixodosseusdados,àdireitaouemumaplanilhadiferente.Suponhoqueestejanamesmafolha,abaixodosdados,naslinhas12a14.Coloque

=IF(A2>B2,A2,IF(A2=B2,"same", ""))

na célula A12 e arraste / preencha para a direita e para baixo. Isso avalia o valor na célula de dados correspondente se for maior que o valor na próxima célula na mesma linha. Em seus dados, isso é verdade para os máximos locais, ou seja, os picos. Quando dois valores de dados adjacentes são iguais, isso avalia o valor de texto same . Caso contrário, está em branco. Aqui eu modifiquei seus dados da linha 3 para conter um bloco de valores iguais no meio:

Agora,afunçãoCOUNT()informaráquantosnúmerosexistememumalinha,queéonúmerodevezesqueosdadoscaíramentreduascélulasconsecutivas.Paravalorescadavezmaiores,issoserázero;seovalorforredefinidoperiodicamente,issomostraráquantasvezesissoaconteceu.ECOUNTIF(…,"same") informa quantas vezes duas células consecutivas foram iguais. Isso pode ser melhor na detecção de um processo morto que simplesmente comparar os valores mínimo e máximo.

Você pode achar esses valores máximos úteis para suas estatísticas. Considere reduzi-los com LARGE() , AVERAGE() ou SUM() .

    
por 30.04.2015 / 06:38
0

Na verdade, eu faria isso no script em que você captura os dados. Além de capturar o tamanho em um arquivo de "dados", salve o tamanho atual, na próxima execução, compare a nova corrente com a anterior. Se o novo for menor que o antigo, salve TRUE no nome do arquivo em um arquivo CSV separado, caso contrário, salve FALSE. Certifique-se de que os dados e este arquivo estejam indexados por nome de arquivo para que você possa combiná-los.

Usar uma linguagem de script como Python ou Node.js tornaria isso uma tarefa bem simples. Muito mais fácil do que tentar fazer tudo em alguma fórmula complicada do Excel.

    
por 30.04.2015 / 01:48