1
resposta

[Dúvida] Cálculo médio com condição no Power Bi

Olá,

Tenho um problema que eu não estou sabendo resolver e gostaria de ajuda.

Tenho uma base de dados onde tenho robôs executando tarefas de criação de itens que são acoplados a chamados. Isto é, posso ter 1 chamado englobando mais de um item. O que eu preciso é calcular o tempo de execução que o robô levou para criar esse item.

O robô entende o chamado e o tempo de criação acontece a partir do momento do reconhecimento do chamado, no entanto, a atuação do robô é por fila, fazendo com que cada item seja criado após a criação do item anterior.

Ex:

ChamadoItemTempo de criaçãoTempo de Atualização
1234120/10/2023 10:4920/10/2023 10:51
1234220/10/2023 10:4920/10/2023 10:53
1234320/10/2023 10:4920/10/2023 10:55
1234420/10/2023 10:4920/10/2023 10:57

Então com isso podemos perceber que a média de tempo que o robô levou para criar cada item é 2 minutos, ao invés de 5 minutos como seria se eu fizesse uma AVERAGE normal.

Como eu posso resolver essa questão?

Obrigado!

1 resposta

Oi!

Para calcular o tempo médio de criação de cada item de forma mais precisa, considerando que o robô atua em fila e o tempo de criação de cada item é sequencial, você pode fazer o seguinte:

  1. Ordenar seus dados pela coluna "Tempo de Atualização" em ordem crescente, de modo que os registros estejam na ordem em que foram criados.

  2. Calcular a diferença de tempo entre cada registro consecutivo. Isso lhe dará o tempo que o robô levou para criar cada item.

  3. Calcular a média desses tempos de criação.

Aqui está um exemplo em Python de como você pode fazer isso usando a biblioteca pandas:

import pandas as pd

# Suponha que 'df' seja o seu DataFrame com os dados
# Ordene os dados pelo tempo de atualização
df = df.sort_values(by='Tempo de Atualização')

# Calcule a diferença de tempo entre os registros consecutivos
df['Tempo de Criação Item'] = df.groupby('Chamado')['Tempo de Atualização'].diff()

# Calcule a média dos tempos de criação
media_tempo_criacao = df['Tempo de Criação Item'].mean()

print(f"A média de tempo de criação de cada item é: {media_tempo_criacao}")

Com isso, você obterá a média de tempo de criação de cada item, levando em consideração que os itens são criados em sequência, um após o outro, de acordo com o tempo de atualização. Isso deve fornecer uma estimativa mais precisa do desempenho do robô na criação de itens.