Diary, Data, IT

[TIL] 31일차 TIL(20230321) - Tableau MTD, MoM, 날짜 매개변수 본문

STARTERS/TIL

[TIL] 31일차 TIL(20230321) - Tableau MTD, MoM, 날짜 매개변수

라딘 2023. 3. 21. 17:46

 

 

[TIL] 31일차 TIL(20230321) - Tableau MTD, MoM, 날짜 매개변수

 

 

 

1. MTD

- Month to Date, 해당 월의 현재 일자까지의 값을 누적하거나 집계한 것

- MTD를 통해 현재까지의 현황을 바탕으로 이번 달의 결과를 대략적으로 예측하고 짐작하는 지표로 활용

 

- 태블로를 통한 MTD 구현:

1) 날짜 매개변수를 설정. 보유한 데이터의 전체 일자를 포함하도록 설정하는 것이 좋다.

2) MTD를 구할 조건 설정. 매개변수를 기준으로 동일한 달의 이전 일자까지를 선택한다.

 

 

3) 조건을 필터에 걸고 '참'인 결과만 출력하도록 설정한다.

4) MTD를 구하고자 하는 필드를 넣어주면 자동으로 MTD를 계산하여 반환하게 된다.

 

 

 

* QTD

DATEDIFF('quarter', [Order Date], [Date Parameter]) = 0 AND
DATEDIFF('day', [Order Date], [Date Parameter]) >= 0

 

* YTD

DATEDIFF('year', [Order Date], [Date Parameter]) = 0 AND
DATEDIFF('day', [Order Date], [Date Parameter]) >= 0

 

 

2. MoM

- 전월 대비 현재 월의 증감 추이

- DATEDIFF를 이용해 현재와 지난 달의 데이터를 추출하고 나눠서 증감률을 구할 수 있다.

 

- DATEDIFF('month', [구할 월 필드], [기준 월 필드]) = 0인 데이터와 1인 데이터를 찾아 계산하는 방식이다.

- [기준 월 필드]는 매개변수로 설정하여 기준을 조정해가며 사용할 수 있다.

 

*YoY는 DATEDIFF의 기준을 'year'로 하여 동일하게 계산하면 구할 수 있다.

 

 

3. 날짜 매개변수

- MTD, MoM 등 기준 날짜를 설정하고 이를 기준으로 값을 계산할 경우가 꽤 많이 존재한다.

- 이런 상황에서 기준 날짜를 바꿔주기 위해 날짜 매개변수를 지정할 수 있다.

- 날짜 매개변수는 주로 보유한 데이터에 있는 목록(기간)으로 가져오는 것이 편리하다.

 

- [다음에서 값 추가] - [날짜 필드 선택]을 통해 데이터에 포함된 날짜를 간단하게 가져올 수 있다.

 

 

4. 대학 기부금 현황 대시보드

미국 대학에 기부된 금액과 현황에 대한 데이터를 바탕으로, MoM, MTD 등을 구하고 날짜 매개변수를 이용해 일자를 바꿔가며 데이터를 확인할 수 있는 대시보드를 작성했다. 또한 Amount/Percent 매개변수를 통해 금액과 차지하는 비율로 그래프의 내역을 바꿔가며 표현할 수 있는 기능을 넣었다.

 

 

1. DATE 매개변수

일자별 대시보드이기 때문에 DATE 매개변수를 넣어 보고싶은 날짜를 설정하며 그 날의 현황을 확인할 수 있다. 

 

2. TYPE 매개변수

TYPE 매개변수에서 MoM, YoY, MTD, YTD를 설정할 수 있다. 매개변수에 따라 좌측 상단에 값이 변경되어 보여지게 된다.

 

3. Today Amount/Percent

선택한 날짜의 총 기부금액과 전체 금액에서 그 날의 기부금액이 차지하는 비율을 Amount/% 매개변수를 통해 조정하며 확인할 수 있다.

 

4. College Pie Chart

일자별 기부금의 단과대별 비율을 파이 차트로 확인할 수 있다. Amount/% 매개변수를 통해 정확한 금액과 그 날의 전체 기부금 중 각 단과대가 차지하는 비율을 조정하여 볼 수 있다.

 

5. Donations Bar/Line Chart

현재 월부터 선택한 일자까지의 월별 기부금 추이를 확인할 수 있는 그래프들을 수록했다. 바 그래프는 일자별 기부금을 의미하고 라인 그래프는 전날에 비해 오늘의 기부금이 얼마나 증가/감소했는지의 수치와 비율을 확인할 수 있다. 선택한 일자에 따라 볼 수 있는 기간을 조정할 수 있다.

 

 

 

4.1 세부 차원 계산하기(LOD)

대시보드를 만들면서 Amount의 경우는 전체 차원에서 계산해도 무리가 없지만, 비율의 경우 선택한 하루 일자를 100으로 하여 보여줄 필요가 있었다. 하나의 그래프에서 서로 다른 차원을 이용하여 계산한 결과를 보여주기 위해 LOD를 사용했다.

 

1. DATE T/F라는 논리형 필드를 만들고 필터에 걸어서 해당 날짜만 반환할 수 있도록 설정한다.

2. 결국 DATE T/F가 '참'이 되는 경우를 기준으로 사용하기 위해, 선택한 날짜의 기부금을 구할 수 있는 TOTAL T/F를 생성했다.

 

3. 선택한 날짜의 각 기부금을 선택 일자의 전체 기부금(TOTAL T/F)을 기준으로 나누어 백분율을 구했다.

 

해당 일자의 단과대별 기부금 비율

 

 

 


 

 

소감 및 정리

전날보다 상당히 많은 매개변수로 동작하는 대시보드를 만들다보니 고려해야 할 부분들이 많았다. 특히 금액과 비율로 표현하는 부분에서 고민할 필요가 있었는데, 백분율은 전체 기준이 아니라 각 일자를 기준으로 구해야 하다보니 LOD를 사용할 필요가 있었다. 또 MoM과 MTD를 같은 매개변수에 넣는 과정에서 서로 다른 종류의 서식을 사용해야했기 때문에 이를 고려한 필드를 추가적으로 만들어주는 등의 과정이 필요했다. 대시보드를 만들면 만들수록 내가 보여주고자 하는 목표를 위해 어떤 기능들을 넣어야 하는지, 그 기능들을 구현하기 위해서 거쳐야하는 과정이 좀 더 쉽게 그려지는 것 같다는 생각이 들었다. 과정이 완벽히 그려지기만 하면 하나하나 천천히 구현하는 단계는 별로 어렵지 않았던 것 같다. 또 많은 기능들을 사용하다보니 하루하루 확연히 실력이 느는 것이 눈에 보여 재밌기도 했다 :) 

 

매일 눈에 보이는 결과물을 낼 수 있어 뿌듯하다!