Ir para conteúdo
  • 0

Analise Quartil


Valmir Braz
Ir para solução Solucionado por paulocesarmlf ,

Pergunta

  • Alunos

Pessoal Boa noite.

 

Preciso fazer uma análise quartil que consiste em quartis de 0,25 - 0,50 - 0,75 e 1,Cujo analise me mostre qual a média de Duração por quartil. (Medida[Média Duração])  conforme abaixo.
image.png.147d6375663d46bf782bee6c1624b90e.png



E também me mostra o quartil (Q1,Q2,Q3 e Q4 ) que o operador (dOperador[idOperador]) se encaixa com base na medida [Média Duração]
image.png.9e3fe7ee60ee7474e6f66977b1f9b519.png


Esta medida tem que reagir aos filtros que estão na pbix.

Fiz um exemplo no excel (em Anexo) do resultado esperado 

Desde ja Obrigado.

Exemplo Quartil.pbix Exemplo Excel.xlsx

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução
14 horas atrás, Valmir Braz disse:

Pessoal Boa noite.

 

Preciso fazer uma análise quartil que consiste em quartis de 0,25 - 0,50 - 0,75 e 1,Cujo analise me mostre qual a média de Duração por quartil. (Medida[Média Duração])  conforme abaixo.
image.png.147d6375663d46bf782bee6c1624b90e.png



E também me mostra o quartil (Q1,Q2,Q3 e Q4 ) que o operador (dOperador[idOperador]) se encaixa com base na medida [Média Duração]
image.png.9e3fe7ee60ee7474e6f66977b1f9b519.png


Esta medida tem que reagir aos filtros que estão na pbix.

Fiz um exemplo no excel (em Anexo) do resultado esperado 

Desde ja Obrigado.

Exemplo Quartil.pbix 86 kB · 1 download Exemplo Excel.xlsx 11 kB · 1 download

Mano, existe a formula percentil que monta esses quartis mas para ela funcionar com os filtros precisa de uma modelagem complexa.

Como você está na área de dúvidas de DAX o que eu te aconselho é:

1. Fazer um ranking com medida de desempate

Desempate

Desempate = MAX(dOperador[IdOperador])/1000000000

Rank

Rank =
RANKX(
ALLSELECTED(dOperador[IdOperador]),
[Média Duração] + [Desempate]
)


2. Fazer medida do Quartil dividindo o grupo em 3

var vQtdeOperador = CALCULATE(
DISTINCTCOUNT(dOperador[IdOperador]),
ALL(dOperador[IdOperador])
)
 
var Q1 = vQtdeOperador*0.25
var Q2 = vQtdeOperador*0.5
var Q3 = vQtdeOperador*0.75
 
return
SWITCH(
TRUE(),
[Rank] <= Q1,
"Q1",
[Rank] <= Q2,
"Q2",
[Rank] <= Q3,
"Q3",
[Rank] > Q3,
"Q4"
)


*** Isso ai mostra TODO MUNDO até quem não teve nenhum tempo durante o periodo e filtros aplicado

image.png.1c47bdf99a8796081e527283cab2c2e6.png


**** Se você quiser que faça o quartil somente daqueles que tiveram algum resultado mude a medida de quartil para essa:
 

Quartil =
var vQtdeOperador = CALCULATE(
DISTINCTCOUNT(dOperador[IdOperador]),
FILTER(
ALL(dOperador[IdOperador]),
NOT ISBLANK([Média Duração])
)
)
 
var Q1 = vQtdeOperador*0.25
var Q2 = vQtdeOperador*0.5
var Q3 = vQtdeOperador*0.75
 
return
SWITCH(
TRUE(),
[Rank] <= Q1,
"Q1",
[Rank] <= Q2,
"Q2",
[Rank] <= Q3,
"Q3",
[Rank] > Q3,
"Q4"
)


que ficaria assim:

image.png.c67db0396c2e30b907627d3633b78768.png


Como eu falei, existe a medida "PERCENTILE" que calcula quartis, mas para que os seus filtros consigam interagir com ele. Seria necessário de uma modelagem muito avançada mano e como não sei todas as suas regras de negocio acabei montando com DAX.

Se essa resposta tiver te ajudada, consegue marcar como correta?

Editado por paulocesarmlf
  • Like 1
Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...