
Estou analisando logs onde tenho os horários onde ocorre determinado evento, exemplo:
t=1.05s
t=2.25s
t=2.26s
t=2.35s
t=3.40s
Quero poder traçar a taxa de ocorrências/segundo para ver com que frequência esse evento ocorre ao longo do tempo. Como faço isso?
Editar: eu gostaria de um gráfico de dispersão ao longo do tempo, com o eixo Y sendo (ocorrências/seg) e o eixo X sendo (tempo). Se não houver maneira melhor, gostaria de calculá-lo a cada intervalo X (digamos 2 segundos).
Responder1
Isso também pode ser feito usando COUNTIFS
. Você precisa construir uma série de números para serem os “baldes”. Se você deseja apenas uma resposta rápida, basta arrastar para baixo o suficiente para capturar todos os seus dados. Se você quiser uma solução mais robusta, você pode adicionar uma condicional à categoria para ver se ela é maior que a MAX
dos dados e #N/A para que não seja plotada.
Imagem de resultados e intervalos
Fórmulas, estão nas células D4 e copiadas para baixo e E3 e copiadas para baixo. Existe uma categoria extra além das contagens, pois elas formam um limite. Você também pode ter a célula extra no topo. O valor em E1
retorna o tamanho dos buckets. Copiei-os o suficiente para capturar todos os dados.
D4=D3+$E$1
E3=COUNTIFS($B$3:$B$27,">="&D3,$B$3:$B$27,"<"&D4)
Responder2
Uma maneira rápida de fazer isso apenas com recursos do Excel (sem fórmulas/VBA) é por meio de uma tabela dinâmica. Você pode fazer bom uso específico do Group Field
recurso. Ele permite contar ocorrências dentro de um determinado intervalo de valores.
Imagem dos resultados, a caixa de diálogo exibida surgiu PivotTable->Analyze->Group Field
na faixa de opções. Você precisa ter um dos horários selecionado para que este menu apareça.
A única desvantagem dessa abordagem é que você não tem muito (nenhum) controle sobre a formatação dos rótulos do gráfico.
A vantagem dessa abordagem é que você pode alterar rapidamente o intervalo do grupo (abrir o menu novamente) sem precisar mexer nos dados ou fazer muito trabalho.