Tableau | 실무 유형별 데이터 시각화

솔비·2024년 4월 23일
0

📈 Tableau

목록 보기
4/6

태블로 실무계산 및 쿼리방식


📌 계산된 필드로 할 수 있는 것 : Create, Save, Use
1.데이터 소스에서 새로운 컬럼 생성
2.새롭게 추가된 컬럼을 저장
3.새롭게 추가된 컬럼을 분석에 사용
📌 계산된 필드를 쓰는 이유? 새로운 데이터를 만들어 분석하기 위해
1.데이터 분류
2.데이터 유형 변경
3.데이터 집계
4.데이터 필터링



1) 기본계산

- 기본계산 방식

기본 계산방식으로는 크게

  • Row-level Calculation (행 수준 계산)
    • 데이터 원본의 행 수준에서 계산
    • ex) SPLIT처럼 특정 기호를 기준으로 데이터의 한 부분을 추출하여 다른행을 생성
  • Aggregate Calculation (집계 계산)
    • 데이터를 집계하여 계산
    • ex) COUNTD처럼 특정컬럼의 값을 중복없이 고유한 항목으로 카운트

2가지가 있다.

- 기본계산의 종류

태블로 공식 문서 (링크)

숫자함수

  • 필드의 데이터값에대한 계산수행기능
  • 숫자함수는 숫자값을 포함하는 필드에서만 사용가능
    • ABS() : 절댓값반환
    • CEILING() : 가장 근접한 정수로 반올림
    • FLOOR() : 가장 근접한 정수로 반내림
    • ROUND() : 지정한 자릿수로 반올림/반내림
    • ZN() : Null 이 아니면 식 그대로, Null 이면 0 반환

문자열함수

  • 문자열 데이터 조작가능
  • 문자열을 분할하거나, 합쳐서 새로운 필드에 저장가능
    • SPLIT : 특정기호를 기준으로 분할
    • CONTAINS : 문자열에 포함되어 있는지 확인
    • LEN : 문자열 길이반환
    • LEFT : 왼쪽에서 n개반환
    • MID : 지정된 start 위치에서 시작하는 문자열을 반환
    • RIGHT : 오른쪽에서 n개반환
    • REPLACE : 특정문자를 특정문자로 변경

날짜함수

  • 데이터 원본의 날짜 조작 가능
  • 기존 값에서 새로운 날짜 값을 만들 수 있음
    • DATETRUNC() : 지정된 날짜를 날짜 부분에 맞춰 잘라냄 (차트의 날짜 단위 지정 시 주로 사용)
    • DATEADD() : 시작 날짜에 지정된 수의 날짜 부분(월, 일 등)을 추가
    • DATEDIFF() : 두 날짜 사이의 날짜 부분(주, 년 등) 수를 반환
    • DATEPARSE() : 특정 형식의 문자열을 날짜로 반환
    • DATEPART() : 지정된 날짜 부분의 이름을 정수로 반환

유형 함수

  • 필드를 한 데이터 유형에서 다른 데이터 유형으로 변환 가능
    • STR() : 문자열로 변환
    • DATE() : 날짜로 변환
    • FLOAT() : 실수로 변환
    • INT() : 정수로 변환

논리 함수

  • 특정 조건이 참인지 아니면 거짓인지 여부를 결정 가능
  • 특정 임계값 위 또는 아래인지도 판단 가능

집계 함수

  • 데이터를 요약하거나 세부 수준 변경 가능
  • 특정 연도의 주문 수를 요약하여 비주얼리제이션에 표시



2) 테이블계산

View 에 보이는 내용을 바탕으로 계산되며, 측정값 집계에 자주 사용됨

계산이 적용되면 측정값 마크 옆에 세모 모양으로 표시된다.
전월대비증감률이나, 전체대비 구성비율 등에 사용

계산유형, 계산방향을 선택할 수 있는데,
방향의 경우 해당 영역 내에서의 계산이 이루어진다.

1. 테이블 옆으로


이미지는 차이이기 때문에 옆으로의 차가 나오지만,
비율로 선택했을 시 옆칸 전체의 합이 100%로 계산됨

2. 테이블 아래로

3. 테이블 옆에서 아래로

4. 테이블 아래에서 옆으로

5. 패널 아래로

6. 패널 옆에서 아래로

7. 패널 아래에서 옆으

8. 특정차원

실습

매출을 텍스트에 넣어 측정값을 2개 만든뒤
하나는 비율로, 하나는 순위로 넣었다.
여기서 패널아래로를 넣어 카테고리 내에서의 순위, 백분율이 생성되었고 서식으로 "위"를 추가하였다.
(추가로 측정값 아래 차원들을 패널에 드래그드랍하면 이름변경과 데이터추가가 가능하다 )



3) LOD계산

계산할 수준을 세부적으로 제어 가능

참고링크

  • 사용방법

- FIXED

현재 View 에 관계 없이 특정 차원을 사용하여 계산
완전히 독립적인 수준


세그먼트를 fixed하여 매출의 합계를 나타낸다면,
카테고리의 영향을 받지 않고 세그먼트에 해당하는 전체매출만 보여준다.


뷰에 차원으로 사용한 패널을 모두 넣어 사용한다면
뷰에서 보여지는 전체매출과 동일하다.
단, 여기에 다른 차원값을 추가하였을 때
sum(매출)은 변하는 반면, fixed를 사용한 값은 변하지 않는다.

- 테이블 범위 LOD

따로 범위 지정 없이 전체테이블 수준에서 계산



4) 태블로 실무계산

태블로 내 계산과 필터의 작동 순서 = 쿼리 파이프라인
쿼리 파이프라인에 따라 순서대로 실행됨
작동 순서와 사용자가 예상하는 순서가 다를 경우
작업이 실행되는 순서를 변경할 수 있음

순서는 위부터 아래로 이어진다.

1. 데이터 추출필터

: 추출을 만드는 경우에 해당
📌 즉 데이터를 불러올 때 거치는 필터

2. 데이터 원본 필터

: 성능을 위해 사용하지 않을 컬럼을 필터하는 것
📌 데이터 원본에 대한 필터링

3. 컨텍스트 필터

: 워크시트에서 만든 모든 필터 중
가장 상위에 있는 필터

4. 집합, 조건, 상위 필터

  • 조건필터

    : 차원 (범주형) 데이터의 필터링에서 필터링 기준으로 사용할 규칙 정의
  • 상위필터

    : 차원 (범주형) 데이터의 필터링에서 필드 기준에 따라 TOP N 개를 필터링
  • 집합필터

    : 데이터의 하위 집합을 정의하는 사용자 지정 필드

5. 차원 필터
: 차원 데이터의 일반적인 필터링

6. 측정값 필터

: 측정값 데이터의 일반적인 필터링

7. 테이블 계산 필터
테이블 계산이 적용된 필드의 필터링
필터 중에서 가장 마지막에 적용됨

✅ 예제 : Furniture 카테고리 내에서 매출 상위 3개 서브카테고리 확인

이때, 카테고리에서 Furniture만 필터링을 먼저해주고
매출 TOP 3개 서브 카테고리를 필터링 해주어야 하는데

<문제>
Furniture만 필터링 = 차원필터
< 매출 TOP 3개 서브 카테고리를 필터 = 상위필터
로 실행순서가 반대로 된다.

<해결>

그래서 이미지 처럼 차원필터를 컨텍스트 필터로 바꿔준 뒤

상위필터를 추가해주어야 한다.





실무 시각적 분석 예제


1) 드릴다운 시각적 분석

필드를 계층형으로 분리하여 비주얼리제이션을 쉽게 세분화할 수 있음
각 수준 사이를 빠르게 드릴다운 하기 위한 기능


계층을 생성하여 시각화 한 후
눈에 띄는 지표를 드릴다운(필터추가+추가)하여 EDA

집합과 매개변수
*매개변수 : 유저가 매개변수를 만지면서 차트를 조정할 때 사용




우측 매개변수 변경 시 N에 맞는 상위고객 색상변경


매개변수에 따른 Top N의 수 변경


이외값은 other로 처리

2) 상관관계 시각화

- box plot

측정값 전체에서의 데이터 분포 표현 > 이상치가 있는지 확인 가능


서브카테고리의 월별 판매량 분포를 볼 수 있는 박스플롯

머릿글 우클릭 > 참조선추가 > 박스플롯

- histogram

분포확인


주문 당 구매 수량 분포 확인


여기서 불연속형으로 바꾸면 바 사이의 공간이 생김

- . Correlation Matrix

상관관계 확인
고객이 구매한 제품의 서브카테고리간에 어떤 상관관계가 있는지
(X를 구매하면 Y를 구매할 가능성이 높은가)


먼저 행/열에 모두 서브카테고리가 와야하므로
Orders 테이블을 order_id로 이너조인하고

상관관계를 확인할 측정값들을 매개변수 목록으로 만들어준다.
이 때도 x축과 y축에 적용해야하므로 복제하여 2개 만들어준뒤


매개변수에 매치되게끔 계산된 필드를 역시 2개 만들어준다.

corr 함수를 적을 필드를 생성하여 색상에 넣어주면

완성(은 아니고 절반은 지워져야하므로)


인덱스를 만들어준다

원리로는 index1은 테이블 옆으로 index2는 테이블 아래로로 설정하여
index1 > index2인 경우를 지워줄건데


null이 아니고 index2가 큰경우만 True가 되게 하여 필터에 넣어준다.

우측 측정값들을 바꿔주면서 상관관계 확인 !

3) KPI 비교 시각화


📌 비교기간 대비 KPI 비교 시각화를 만들어보자

- 숫자시각화


➡️ max[order date] : 아마 현업에서 오늘 또는 어제날짜 일텐데
order date가 max기준 -7보다 크면 지난주, -15보다 크면 지지난주로 설정하는 계산된필드를 생성한다.

➡️매출과 증감율을 모두 나타내야 하기 때문에 행선반에 0을 2개 넣어 더미데이터를 만들고 이중축을 만들어준다
전체마크는 모양, 크기를 가장작게 색상을 투명하게 해서 보이지 않게 해준다.


➡️현재 나눠져서 보이는 이유는 period라는 차원을 만들었기 때문이고
마크 위쪽의 합계 0은 판매합계 마크 아래쪽의 합계 0은 비율차이이다.
좌측을 기준으로의 비율차이를 보여준다.
오른쪽이 대상이고 왼쪽이 기준점이므로 왼쪽은 우클릭> 숨기기해주도록 한다.

➡️ 복제해서 동일하게 profit, orders 시트도 만들어준다.
단, orders는 중복주문이 있을 수 있기 때문에 countd()로 필드를 만들어준다.

- 라인시각화


➡️ 숫자 시각화는 주 단위로 period를 만들었지만
라인에서는 Year로 만들어준다.


➡️ 작년 1년일경우 판매 반환 재작년 1년 ~ 작년1년일경우 판매반환 두가지를 만든다.
재작년까지 만드는 이유는 이중축으로 작년대비를 추가로 보기 위함이다.

재작년 그래프를 영역으로 바꾸고 색상을 조정해주면 완성이다.

➡️ 복제해서 동일하게 profit trend, orders trend시트도 만들어준다.

단 orders의 경우 countd([order id])가 아닌 [order id]로 생성 후
선반에 넣을 때 고유로 넣어주어야함

- 기준날짜


➡️ preriod week 기준 지난 7일 중 최대 최소 값을 넣어준다.

- 대시보드

4) 시계열분석 및 예측 시각화

- 라인 이중축 차트

시간에 따른 변화의 기본이 되는 라인 차트 +
이중축으로 두 개의 측정값을 한 차트에 넣기

매출 바차트와 이익율(sum(sales)/sum(profit)) 라인차트 이중축
📌 각각 열은 서식에 들어가서 바차트와 라인차트 색상으로 바꿔준다.

- 캘린더 차트

날짜에 따른 매출 변화를 색상으로 빠르게 인식


행에 주 열에 요일 텍스트에 일 필터에 년월을 넣어 캘린더형 수익차트를 만든다.

- 시계열 예측 모델

Tableau 의 Predictive Modeling 기능

태블로에서 제공하는 예측모델링 함수를 사용한 필드생성

참고링크 : https://help.tableau.com/current/pro/desktop/ko-kr/predictions_choosing_model.htm

날짜필드 우클릭하여 날짜범위연장을 해주면
예측하고자 하는 기간을 설정할 수 있다.






패스트캠퍼스 그로스 리더와 세계 3등에게 배우는 13개 데이터 분석 프로젝트
Study Note
profile
Study Log

0개의 댓글

관련 채용 정보