본 포스팅은 인프런의 태블로 레벨UP 강의를 바탕으로 작성되었습니다.
테이블 계산은 Configurable Secondary Calculation이다.
사칙연산이 포함되는, 태블로에서 제공하는 계산 방법 중 하나
첫 번째 계산이 존재하고, 그 이후에 연이어서 (종속되어) 나타나는 계산
화면에서 보이는 막대 그래프, 라인 차트 등 모든 것들이 First-Level에서 이루어지는 집계 계산이다. 한마디로 태블로가 우리에게 보여주는 마법과 같다.
query language
로 바꿔줌order of operations
에 따라 작동됨계산의 범위를 설정할 수 있다.
빈번하게 사용되는 것들 중심으로 사용자가 쓰기 편리하도록 구성해놓은 패키지
테이블 옆으로 : 각 지역과 각 연도별로 쿼터에 대해서 누적 합계
테이블 계산 - 특정 차원 - Order Date 분기
테이블 아래로 : 각 연도와 각 분기별로 지역에 대해서 누적 합계
테이블 계산 - 특정 차원 - Region
각 연도별로 지역과 분기에 대해서 누적 합계 : Region, Order Date분기 선택
위치에 따라 줄을 세움
'위치의 범위를 어디까지 정할 것인가'가 중요함
그 줄의 제일 끝 번호
Aggregated Calc에 따라 줄을 세운다
특정 기준에 의한 순위
RANK
: 1, 2, 2, 4RANK_DENSE
: 1, 2, 2, 3RANK_MODIFIED
: 1, 3, 3, 4RANK_UNIQUE
: 1, 2, 3, 4 (INDEX
와 같은 방식)오름차순으로 정렬하고 싶을 때는 RANK(-COUNTD([Order ID]))
와 같이 앞에 -
를 붙여줌
지정된 범위 전체에서의 Aggregated Calc
INDEX는 사용하기 간단하고 편리하기 때문에 자주 사용하지만, 조금 더 정교하고 다양한 방식으로 순위를 배길 때는 RANK가 편리하다.
WINDOW_AVG
WINDOW_COUNT
WINDOW_MAX
WINDOW_MIN
WINDOW_SUM
등
Customizable Calculation Range
: 사용자 중심의 커스터마이징이 가능한 계산의 범위
WINDOW_AVG(SUM([Sales]), 0, 3)
# 0은 자기 자신의 위치
# 다른 숫자는 자신을 기준으로 상대적인 위치
WINDOW_AVG(SUM([Sales]), -1, 1)
IF WINDOW_COUNT(SUM([Sales]), -1, 1) = 3 THEN
WINDOW_AVG(SUM([Sales]), -1, 1)
END
위 그림과 같이 년도와 분기로 나눠줬을 때는 패널별로 WINDOW
함수를 적용해주기 위해, 테이블 계산을 패널(옆으로)
로 변경해줘야 한다.
WINDOW
함수는 데이터의 분포가 상이하게 나타나는 차원값에 대해서 정규화(Normalization)시킬 때 굉장히 유용하다
Example
⛔️ 고객별 매출 분포를 확인하기 위해서는 테이블 계산 - 특정 차원 - Customer Name
을 설정해줘야 한다.
정규화 후
매출 규모를 상대화시킴으로써, 각 지역에서의 최대 매출 고객을 동일 선상에서 확인할 수 있다.
# Sales - Normalized
(SUM([Sales]) - WINDOW_MIN(SUM([Sales])))
/ (WINDOW_MAX(SUM([Sales])) - WINDOW_MIN(SUM([Sales])))