P A T H

5 Maneiras de Fazer YoY e YTD

O que você vai aprender?

Aqui, veremos 5 abordagens diferentes, começando com os cálculos de tabela mais simples até a duplicação avançada do conjunto de dados e juntando-o a ele mesmo. Utilizaremos a base pública Superloja, disponível no Tableau.

Dica inspirada no blog https://jimdehner2.blogspot.com/

Introdução:

Cálculos YoY e YTD são métricas de negócios fundamentais – afinal, quem não quer saber como eles se compararam ao ano passado, mês passado ou como eles estão no ano até a data. Parece que os usuários em todos os níveis de experiência têm dúvidas sobre como concluir cálculos do tipo período sobre período e período até a data ou têm expectativas diferentes para o resultado. Então vamos lá!

1: Cálculos da Tabela

A maneira mais fácil de fazer um cálculo de período sobre período é com uma diferença percentual de cálculo de tabela padrão:

Dica Tableau 160 01

Bastante fácil, mas a maioria dos usuários deseja eliminar a coluna vazia do ano inicial da série. Isso não pode ser feito com um cálculo de tabela.

2: LOD e Fixed

O segundo método usa 2 LODs e requer um ponto de partida fixo (fixed). Esse ponto de partida pode ser de um parâmetro, a data atual (Today()) ou a última data no conjunto de dados {max(date)} O exemplo usa Today().

O valor YTD atual pode ser determinado usando o LOD:

{ FIXED [Category]: sum(  if DATETRUNC(“year”,[Order Date])= DATETRUNC(“year”,TODAY())and DATETRUNC(“day”,[Order Date])<= DATETRUNC(“day”,TODAY()) then [Sales] end )}

Onde o ano da dimensão da data é comparado com o ano de Today() e todos os dias do ano anterior e incluindo Today() e incluídos no total.

Da mesma forma, o cálculo do valor YTD anterior é:

{ FIXED [Category]: sum(  if DATETRUNC(“year”,[Order Date])= DATETRUNC(“year”,dateadd(“year”,-1,TODAY())) and DATETRUNC(“day”,[Order Date])<= DATETRUNC(“day”,dateadd(“year”,-1,TODAY())) then [Sales] end )}

E compara o ano da data com 1 ano antes de Today () usando uma função Dateadd.

Então, a diferença percentual YoY é simplesmente calculada usando:

(sum([Current YTD Sales (today)])-sum([Prior YTD Sales (today) ]))/

sum([Prior YTD Sales (today) ])

3: Período variável POP 

Freqüentemente, os usuários desejam comparar YTD versus PYTD ou MTD versus PMTD (ou mais) com base na seleção de um parâmetro pelo usuário final. Primeiro, um parâmetro é necessário para selecionar a base de comparação.

Dica Tableau 160 03

Em seguida, 2 lógicas de Case para os totais do período Current ou Prior  até a data – as lógicas case usam LODs semelhantes aos usados ​​no exemplo anterior.

Dica Tableau 160 04

Selecionando o Yaers retorna o YTD (July 9, 2020) em relação ao YTD Prior (July 9, 2019).


E selecionando o Month irá comparar o MTD (July 9, 2020) com o MTD Prior (June 9, 2020).

Dica Tableau 160 05
Dica Tableau 160 06

4: Comparação dinâmica YoY

Com menos frequência, um usuário desejará fazer uma comparação YoY em um intervalo de datas e isso apresenta um problema com as três primeiras abordagens. Os cálculos da tabela fazem uma comparação por posição em uma tabela de dados, não pela data real e as soluções de LOD dependem da fixação de uma data final.

Uma comparação YoY dinâmica ou em execução pode ser feita, mas será necessário duplicar o conjunto de dados e juntá-lo a si mesmo, compensando a data em um ano. Mas isso só pode ser feito em níveis onde o conjunto de dados é sólido – ou seja, sem nulos no conjunto de dados

O primeiro exemplo usa um subconjunto de dados muito simples dos dados da Super-loja que inclui apenas a data do pedido, a categoria, a subcategoria e o valor de vendas. O passo 1 é juntar uma cópia dos dados com ele mesmo no nível de subcategoria, mês e ano, mas compensando o ano.

Dica Tableau 160 07

Quando você abre qualquer planilha, haverá 2 conjuntos de dados no quadro de dados – um é o conjunto de dados original.

Dica Tableau 160 08

E a outra é a cópia que foi juntada para criar um conjunto de dados do ano anterior.

Dica Tableau 160 09

Agora vamos ver como expandir o modelo e criar um YoY móvel. Para manter o visual simples, amplie a data para dados trimestrais e compacte as categorias, de modo que olharemos apenas para os totais.
Para os totais móveis do Current year e Prior, usaremos um cálculo de tabela.

Current year:

window_sum(sum([Sales]),-3,0)

E Prior year:

window_sum(sum([Sales Prior Year]),-3,0)  

They result in this:

Dica Tableau 160 11

5: Use um scaffold para preencher os nulos

Existe um problema quando há nulos ou vazios nos dados.

É preciso expandir o conjunto de dados para o nível do mês e do dia e introduzir vazios nos dados.

Dica Tableau 160 12

Os dados do ano anterior (Prior) não totalizarão mais adequadamente devido aos nulos nos dados.

Dica Tableau 160 13

Para corrigir o problema, é necessário primeiro criar as células ausentes. Isso é feito usando o scaffolding dos dados – No exemplo é usado o Prep para criar uma escada no nível de data / categoria e juntando-a de volta aos dados originais.

Dica Tableau 160 14

Resolvendo os nulos e o ano anterior agora totaliza corretamente.

Dica Tableau 160 15

30 de Agosto de 2021

Pronto, agora você já sabe 5 maneiras de fazer YoY e YTD!

Language