1. 보고서 피드백
- 시작하기 전에 전체적인 데이터셋을 간단하게 이야기해야 함
→ 어떤 기간의 데이터, 총 매출, 총 이익 얼마~
→ 데이터셋이 많으면 몇 개인지 말하기 (많이 없다면 이야기하지 않아도 됨)
- 내가 정한 목표에 대해 이야기하고 이에 반하는 것을 하지 않은 이유도 생각해놓기
- 현재 회사가 어떻게 하고 있는지 (현 매출, 순이익, KPI 등)은 기억하고 있어야 함
- 현황
→ 경쟁사, 자사, 시장 현황이 들어가야 함
→ 경쟁사 데이터가 없다면?
경쟁사 데이터가 구축되어 있지 않기 때문에 자사에서 해결할 수 있는 문제를 우선적으로 처리하고자 하였습니다.
- 목표 → why? 현황 (Top-Down 방식/결론부터 이야기하기)
- 결과를 보고할 때 ‘배경 및 목표’가 가장 중요함 → 이 부분에서 듣는 사람이 판가름이 간다.
2. Primary 함수
데이터가 적고 클린하고 나열할 수 있는 데이터에서는 사용하기 괜찮으나 원하는 결과값을 행으로 보고 싶거나, 데이터를 잘라서 보고 싶을 때는 사용하기 어려움
💡 필터로 State 몇 개를 없애면 없는 데이터에서 Primary 함수가 적용이 된다.
2.1 Total()
- 측정 값의 총 합계
- 퍼센티지 설정할 때 사용
TOTAL(SUM([Sales]))
2.2 Window()
- WINDOW_AVG : 원하는 기간 별 평균
# 0,0 → SUM(SALES)와 동일함
WINDOW_AVG(SUM([Sales]),0,0)
# -1,1 → 지난 달, 이번 달, 다음 달의 값 평균
WINDOW_AVG(SUM([Sales]),-1,1)
- WINDOW_SUM : 원하는 기간 별 합산
WINDOW_SUM(SUM([Sales]),-1,1)
💡 계산할 데이터 갯수(분기)가 3개가 없을 경우, 값이 나오지 않도록하기
→ IF THEN 함수 사용
① WINDOW_COUNT 로 데이터의 갯수 세기
② 갯수가 3개라면 WINDOW_AVG 함수 사용해서 구하기
# window_avg
IF WINDOW_COUNT(SUM([Sales]),-1,1) = 3
THEN WINDOW_AVG(SUM([Sales]),-1,1)
ELSE NULL # 안 써도 됨
END
window count가 2인 데이터는 window_avg 값이 나오지 않는 것을 확인할 수 있다.
window 함수는 주로 막대 그래프로 시각화하며, 이를 통해 window 함수가 적용된 것을 확인할 수 있다.
→ (2020년 1분기, 2023년 4분기 데이터 없음)
2.3 Lookup()
- MoM 쓸 때 많이 쓰이는 함수 (Sales와 Lookup 함수가 있어야 함)
- 차원을 선택할 수 있음 (지역, 월, 분기 등등)
# 위에 있는 행 / 지난 달 데이터 가져오기
LOOKUP(SUM([Sales]), -1)
# sum - lookup
SUM([Sales])-[look up]
2.4 Running_sum()
- 누계
- running_sum()은 계산된 필드로 써야 활용도가 높음 (퀵 테이블 계산보다는 계산된 필드로 만들기)
- 여기에서 추가로 계산을 할 수 있음
RUNNING_SUM(SUM([Sales]))
2.5 previous_value()
- previous_value(0) : 값 = 0
- previous_value(1) : 값 = 1
# 모든 데이터가 다 0
PREVIOUS_VALUE(0)
# previous_value() - 누계
SUM([Sales]) + PREVIOUS_VALUE(0)
2.6 Rank()
- SQL에서 rank 뽑지 말기 (태블로에서 엉킬 수 있음)
- rank는 차원으로 변경하기! (’불연속형’으로 선택)
[+] rank() 서식 변경 방법
→ Rank() 우클릭 > 서식 > 숫자 > 사용자 지정 > 변경 ('#위')
RANK(SUM([Sales]))
❓ SQL의 Partition by 기능과 동일하게 적용하려면?
→ Rank() 우클릭 > 테이블 계산 > 특정차원 - State/Province
3. 개인 과제
📢 오늘 배운 함수를 활용하여 그래프 3개 그리기
- 제목에 기능 적기
- 매개변수 사용하기
- 2022년 12월 기준 M-1, M-2에 대한 증감율 수치로 표현하기
3.1 청사진 그리기
우선 어떠한 그래프를 보여줄지에 대한 밑그림을 먼저 그려보려고 했다.
오늘 배운 여러 함수 중 그래프로 표현할 수 있는 유의미한 함수가 무엇이 있을지를 가장 먼저 고려했다.
3.2 대시보드 시각화
1) 22년 10월, 11월 전월 대비 증감률 (매개변수 사용)
① 매개변수 만들기 (m-1, m-2)
② 계산된 필드 만들기 (M-1, M-2 - Calc)
CASE [m-1, m-2]
WHEN '1'
THEN SUM(IF DATEDIFF('month', [Order Date], #2022-12-01#) = 1 THEN [Sales] END) / SUM(IF DATEDIFF('month', [Order Date], #2022-12-01#) = 2 THEN [Sales] END) -1
WHEN '2'
THEN SUM(IF DATEDIFF('month', [Order Date], #2022-12-01#) = 2 THEN [Sales] END) / SUM(IF DATEDIFF('month', [Order Date], #2022-12-01#) = 3 THEN [Sales] END) -1
END
③ 화살표를 활용해서 증감률 나타내기
2) 월 매출액 - 연 평균 매출액 (WINDOW_AVG)
① WINDOW_AVG 함수 사용 계산된 필드 만들기
→ 처음과 끝을 기준으로 매출액의 평균을 구하기
WINDOW_AVG(SUM([Sales]), FIRST(), LAST())
② 필드 우클릭 > 테이블 계산 편집 > 패널(아래로)
→ 연도 별 매출액 평균을 구하기 위해서 위와 같이 설정
③ ②에서 구한 연 평균을 매출액에서 빼줌
SUM([Sales]) - [window_avg]
④ 연도 별로 확인할 수 있도록 연도 필터 설정
→ 전체로 보면 막대의 수가 많아서 필터로 원하는 연도만 볼 수 있도록 필터 추가함
3) 연도 별 누적 매출액 (RUNNING_SUM)
① RUNNING_SUM 함수 사용 계산된 필드 만들기
RUNNING_SUM(SUM([Sales]))
② 필드 우클릭 > 테이블 계산 편집 > 패널(아래로)
→ 연도 별 누적 매출액을 구하기 위해서 위와 같이 설정
③ 시각화 시 분기 별 매출액 그래프도 추가
→ 누적 뿐만 아니라 각 분기 별 매출액 데이터도 중요하기 때문
4) 직전 분기 대비 증감률 (QoQ) (Lookup)
① Lookup함수 사용 계산된 필드 만들기
LOOKUP(SUM([Sales]), -1)
② 위의 필드를 활용하여 증감률 구하기
SUM([Sales]) / LOOKUP(SUM([Sales]), -1) -1
💡 회고
✔ 유익한 점 & 배운점
오늘은 팀 과제가 아닌 개인 과제로, 오늘 배웠던 함수들을 활용하여 그래프로 구현하는 것이다.
팀 과제도 많은 도움이 되지만 함수와 기능을 직접 구현함으로써 스스로 태블로 역량을 높일 수 있는 점이 만족스러웠다.
✔ 스스로 아쉬운 점
나는 과제에서 구현하라는 대로 구현하였다.
하지만 여기서 한걸음 더 나아가서 그래프를 구현하는 것도 능력이라 생각이 되는데, 나는 아직까지 그 정도의 생각이 들지 않아서 이 부분이 다소 아쉬웠다.
✔ 개선할 점
하나만 보지 말고 더 나아가서 더 멀리 보자!가 내가 원하는 것이지만, 지금 당장은 힘든 것을 안다!
그러니 차근히 한 단계씩 올라간다는 생각으로 해보자 :)
'웅진X유데미 STARTERS > TIL (Today I Learned)' 카테고리의 다른 글
[스타터스 TIL] 32일차.태블로 실전 트레이닝 (8) - ATTR, 결합된 필드, 집합, LOD (0) | 2023.03.22 |
---|---|
[스타터스 TIL] 31일차.태블로 실전 트레이닝 (7) - 날짜 필터링, ATTR (0) | 2023.03.22 |
[스타터스 TIL] 29일차.태블로 실전 트레이닝 (5) - MapBox, 태블로 추가 기능 (0) | 2023.03.17 |
[스타터스 TIL] 28일차.태블로 실전 트레이닝 (4) - 데이터 결합, 도구설명, DATE함수 (0) | 2023.03.17 |
[스타터스 TIL] 27일차.태블로 실전 트레이닝 (3) - 다양한 종류의 차트 시각화 (0) | 2023.03.15 |