LITTLE BY LITTLE

[16] SQL로 분석하고 Tableau로 시각화하자 - 매개변수, 대시보드, RFM 고객 세분화 분석 본문

시각화/SQL로 분석하고 Tableau로 시각화하자

[16] SQL로 분석하고 Tableau로 시각화하자 - 매개변수, 대시보드, RFM 고객 세분화 분석

위나 2022. 7. 25. 11:59

효율화 & 자동화에 필요한 Tableau 기능

1. 매개 변수

매개변수는 숫자/날짜/문자 등 상수 값이며, 뷰 및 대시보드를 효율적으로 컨트롤하는 Tab-leau 기능이다.

 

** '측정값 이름'의 역할?

더보기

고객별 매출과 수익을 시각화하고 싶을 때, 측정값 이름을 열에 추가하지 않으면, 고객별 매출과 수익이 숫자로 나타나긴 하나, '매출', '수익'이라는 글자가 표시되지 않는다. 이처럼 축 하나에 측정값을 여러개 보여주고자 할 때 필요한 요소이다.

측정값 이름을 열에 추가하기 전
측정값 이름을 열에 추가한 후

매개변수 [시작일] 및 [종료일]을 활용한 대시보드를 생성해보자.

1. 매개변수 시트 생성

  • (▼)를 클릭하여 [시작일] 및 [종료일] 날짜형 매개변수를 생성한다.
  • 현재 값을 모두 '2020-06-13'으로 변경한다.
  • [시작일] 및 [종료일]을 우클릭하여 매개 변수를 표시한다.
  • (▼)를 클릭하여 IF 함수를 이용해서 [Order Date by 매개변수]가 계산된 필드를 생성한다.
    • IF [Order Date] >= [시작일] AND [Order Date] <= [종료일] THEN 'Y' ELSE 'N' END
  • 생성된 필드를 필터에 드래그하여 'Y'로 선택하기
  • 행에 [Order Date]를 클릭하여 월(yyyy년 m월) 및 불연속형으로 변경한다.
  • 마크 카드 - 텍스트에 [매출액] 필드를 드래그한다. 
  • [시작일] 및 [종료일]을 변경한다. 2020-01-01 / 2020-12-31

2. 매개변수를 다른 시트에도 적용해보기

  • 필터를 [관련 데이터 원본을 사용하는 모든 항목]으로 변경하여 전체 워크시트에 적용하기 (기존의 워크시트 뿐만 아니라 새 워크시트에 대해서도 필터가 자동으로 적용된다.)
  • 전체 워크시트에 [Order Date by 매개변수] 필터가 잘 적용되었는지 확인

이런식으로 다른 모든 워크시트에도 매개변수 필터가 적용된다.

3. 매개변수를 활용한 대시보드 생성

  • [누적 막대 차트(매출액)] 및 [매개 변수] 시트를 대시보드로 가져온다.

새 대시보드 생성

  • [시작일] 및 [종료일]을 변경하여 대시보드를 컨트롤한다. 2021-01-01 / 2021-12-31
  • [누적 막대 차트(매출액)] 외 다른 워크시트를 추가하여도 [Order Date by 매개 변수]의 [시작일] 및 [종료일] 필터가 적용된다.

**[시작일] 및 [종료일] 필터가 특정 워크시트에만 적용되도록 하려면, 필터의 매개변수 우클릭 - 워크시트에 적용 -선택한 워크시트 로 변경하면 된다.

책의 결과랑 다르다.. 나중에 수정해보자

 

* Tableau의 다양한 기능 - Tableau Public Gallery 대시보드 참고해보기

 

* 순서 : [데이터 원본 연결] → [워크시트 작업] → [대시보드 구성] → [스토리 만들기]


실무에 자주 쓰이는 Tableau 데이터 시각화


1. PPT 데이터 시각화를 Tableau로

1-1. RFM 고객 세분화 분석

: 고객들의 구매지표(최근성, 구매빈도, 구매금액) 등을 활용해 고객을 세분화하고자할 때 사용한다. 

  • Ctrl + N 태블로 새 창 생성하기
  • Car for Tableau.xlsx 시트를 결합한 후 , 데이터 원본 필터를 편집한다.

1-1. FIXED / COUNTD / SUM / YEAR 함수를 이용해서 고객별 RFM 계산된 필드를 생성하자.

(조건은 고객 및 주문연도별 구매빈도 및 금액)

  • 매출액 : [Price] * [Quantity]
  • 구매금액 { FIXED [Mem no], YEAR([Order Date]) : SUM([매출액]) }
  • 구매빈도 { FIXED [Mem no], YEAR([Order Date]) : COUNTD([Prod No]) }

1-2. IF 함수를 통해, [구매금액] 및 [구매빈도] 기준으로 고객세분화 필드 생성

* 고객세분화 그룹 조건(구매금액 및 빈도 기준)

  • 1. VVIP : 구매금액 15억 이상 & 구매빈도 2회 이상
  • 2. VIP : 구매금액 15억 이상 
  • 3. GOLD : 구매금액 5억 이상
  • 4. SILVER : 구매금액 1억 이상
  • 5. BRONZE : 구매빈도 1회 이상

1-3. 고객 세분화별 회원수를 텍스트 테이블을 통해 살펴보자.

  • 행과 열에 [고객세분화] 및 [Order Date] 필드를 드래그한다.
  • 마크카드 - 텍스트에 [Mem No] 필드를 드래그한다. + 측정값 - 카운트(고유)로 바꾸기

→ 구매금액 및 구매빈도 필드가 Fixed 차원 옵션 (Mem no 및 Order Date)으로 생성되었기 때문에, 연도별로 세분화된 회원수가 집계된다.

  • 우측 표현방식을 '병렬 막대'로 변경하고, 마크카드 - 레이블에 [카운트(고유)(Mem No)] 필드를 드래그한다.

고객 세분화별 회원수 (+병렬 막대)

 

Comments