[내배캠] 데이터분석 6기/본캠프 기록

[본캠프 56일차] 태블로 공부

물맨두 2025. 5. 8. 23:07

 

끝나지 않는 공부, 끝나지 않는 개인과제, 끝나지 않는 프로젝트..

개인 과제야, 그렇다치는데,, 내일부터 프로젝트 기간 시작이라니 믿기지 않는다

 

오늘 한 일은,

  • 태블로 공부
    • [실습으로 배우는 태블로] 4주차 수강하기
    • [태블로 라이브세션] 3회차 수강하기

태블로 공부: [실습으로 배우는 태블로] 4주차 수강하기

계산식 활용하기

텍스트 테이블 

  • 테이블 구조화 형식에는 대표적으로 2가지가 있음: ①wide format table, ②long format table
    • ①wide format table : 옆으로 넓은 형태로 데이터가 쌓이는 형식
      • 데이터 분석을 할 경우 많이 사용하는 형태
      • 표를 비교하거나(상관 관계 분석 및 각 변수의 분포 비교 등) 그래프 시각화하기 용이함
    • ②long format table : 아래로 긴 형태로 데이터가 쌓이는 형식
      • 시간에 따른 변화를 파악하고, 카테고리 간 비교를 시각화하기 적합함
      • 컴퓨터와 태블로가 선호하는 테이블 구조

[실습1] - 테이블 형태 전환하기

행과 열을 전환해 테이블 형태를 바꾼 모습

  • ① 우선 wide format으로 테이블 생성하기
    • Orders.csv에서 열에는 Order Date 컬럼을, 행에는 Product / Category 컬럼을 끌어와 가져온다
    • Orders.csv에서 Quantity 컬럼을 필드에 생긴 테이블 위에 끌어와 가져온다
  • ② 기존의 테이블 행과 열을 전환해 테이블 형태 바꾸기
    • 상단 메뉴에서 분석 / '행과 열 바꾸기'를 선택한다

[실습2] - 총계 구하기

  • ① Orders.csv에서 열에는 Order Date 컬럼을, 행에는 Product / Category 컬럼을 끌어와 가져온다
  • ② Orders.csv에서 Profit 컬럼, Sales 컬럼을 필드에 생긴 테이블 위에 끌어와 가져온다
  • ③ 좌측 메뉴 중 '분석' 탭에서 총계를 테이블로 끌어와 열 총합계, 행 총합계를 생성한다
  • ④ 테이블을 ctrl을 누른 채 클릭하면 생기는 메뉴에서 워크시트 서식 / 총합계 / '패널'에서 원하는 색상으로 글자색을 변경한다

[실습3] - 2020~2023년까지 Sub-Category별 매출의 합계를 하이라이트 테이블로 시각화하기

  •  Orders.csv에서 행에는 Product / Sub-Category 컬럼을 끌어와 가져온다
  •  Orders.csv에서 Sales 컬럼을 필드에 생긴 테이블 위에 끌어와 가져온다
  • ③ 우측 메뉴 중 '표현방식'에서 위에서 3번째 '하이라이트 테이블'을 선택한다
  • ④ 좌측 마크 메뉴에서 마크 / 색상 / '색상 편집'에서 원하는 색상표를 선택한다
  • ⑤ 필드에 생성된 하이라이트 테이블의 Sub-Category의 드롭다운 메뉴에서 필드 / '합계'를 선택한다 그러면 내림차순으로 정렬됨
  • ⑥ 상단 아이콘 메뉴에서 맞춤 / '너비 맞추기'를 선택한다 그러면 필드의 너비만큼 테이블이 채워진다

태블로 작동 원리

추출 필터(Extract Filters)부터 테이블 계산 필터(Table Calc Filters) 순으로 작동한다

  • 태블로에는 6가지 필터가 있고, 이들이 작동하는 순서가 있기에 이를 유의하여 활용해야 한다
    ①, ②번 필터는 데이터 원본 탭에서 활용할 수 있고, ③~⑥번 필터는 워크시트에서 활용할 수 있음
    • ① 추출 필터: 데이터 소스에서 추출된 데이터 필터링(데이터 연결을 추출로 선택할 시에만 사용 가능)
    • ② 데이터 원본 필터: 데이터 원본 소스에서 일부 데이터만 필터링
    • ③ 컨텍스트 필터: 특정값에 대한 데이터만 필터링
    • ④ 차원 핕터: 차원을 기준으로 데이터 필터링
    • ⑤ 측정값 필터: 측정값을 기준으로 데이터 필터링
    • ⑥ 테이블 계산 필터: 특정 계산 결과를 기준으로 데이터 필터링

태블로 작동 순서

  • 또한 계산과 필터의 작동 순서도 있어(일명 '쿼리 파이프 라인') 이를 고려해 작업해야 한다

필터 활용법

  • Top N 필터와 차원 필터: 컨텍스트 필터를 활용해 기존의 작동 순서를 바꿔 지정해 해결한다
    컨텍스트 필터로 지정하면 필터링된 데이터에 대해서만 필터가 적용된다는 점에서 ,
     - ①데이터 원문 자체가 너무 클 때,
     - ②Top N 필터를 사용하게 될 때,
    이 2가지 이유에서 컨텍스트 필터를 많이 활용함
  • 측정값/차원은 우클릭하여 '필터 표시'를 선택함으로써 필드 우측에 필터 창을 띄울 수 있다

[실습1] - 지역별 매출 Top 10 고객을 막대 그래프로 시각화하기

  • ① Orders.csv에서 행에는 Customer Name 컬럼을, 열에는 Sales 컬럼을 끌어와 가져온다
  • ② 상단 아이콘 메뉴에서 '내림차순 정렬'을 선택해 Sales 합계가 큰 순서부터 정렬되도록 변경한다
  • ③ 행에 있는 Customer Name 컬럼에서 드롭다운 메뉴 중 '필터 편집' / 상위/하위 / '필드 기준' 선택한다
    • 순위, 카운트 옵션은 '상위', '값 입력...', '10'로 설정한다
    • 필드, 집계 옵션은 'Sales', '합계'로 설정한다
  • ④ Orders.csv에서 Location / Region 컬럼을 좌측 '필터' 메뉴의 Customer Name 밑에 끌어와 가져온다
    • '필터 [Region]' 창에서 '전체'에 체크한 후 확인 버튼을 누른다
    • 필터 메뉴의 Region 드롭다운 메뉴 중 '필터 표시'를 선택해 필드 우측에 Region 필터 창을 띄운다
  • ⑤ 필터 메뉴의 Region의 드롭다운 메뉴 중 '컨텍스트 추가'를 선택해 Customer Name보다 Region 필터가 먼저 작동하도록 우선 순위를 부여한다 
    그러면 이제 선택한 Region 옵션대로 상위 10명의 고객 이름을 표시하는 것을 확인할 수 있음

기본 계산식 활용하기

  • 계층이 있는 컬럼의 경우 + / - 아이콘을 통해서 드릴 다운이 가능하다
    • 생성해놓고 필요 없는 컬럼은 필드 바깥으로 끌어서 제거할 수 있다
  • 태블로에서 '퀵 테이블 계산' 기능을 통해 쉽게 계산할 수 있다.

[실습1] - 기기 카테고리에서 핸드폰 매출이 차지하는 비율을 100% 스택 플롯으로 시각화하기

각 카테고리별로 하위 카테고리가 매출에서 차지하는 비중을 100% 누적 막대 그래프로 확인할 수 있다

  • ① Orders.csv에서 행에는 Category 컬럼을, 열에는 Sales 컬럼을 끌어와 가져온다
    • 행에서 Category를 가져온 후에 + 아이콘을 클릭해 드릴 다운하여 Sub-Category 컬럼도 추가한다
  • ② 열에 끌어다놓은 Sales의 드롭다운 메뉴 중 '테이블 계산 추가'를 클릭한다
    • '테이블 계산' 창에서 계산 유형을 '구성 비율'로 선택한다
    • 계산 대상을 '특정 차원'을 선택한 후에 Sub-Category만 체크한다
  • ③ 우측의 '표현 방식' 메뉴에서 '누적 막대'를 선택해 시각화를 변경한다
  • ④ 좌측 마크 메뉴에서 색상 / '색상 편집'에 들어가 원하는 색상표를 할당해 그래프 색상을 변경한다
  • ⑤ 좌측 마크 메뉴에서 레이블 / '마크 레이블 표시'를 선택해 그래프에 비율이 표시되도록 레이블을 추가한다

태블로 함수

  • 태블로 함수는 보통 계산된 필드를 생성할 때 활용한다
  • 논리 함수 : IF(단일 조건), CASE WHEN(다중 조건)
  • 날짜 함수 : DATEDIFF(두 날짜 사이의 차이를 반환), DATEADD(날짜 더하기)

[실습1] - 날짜 함수를 활용한 테이블 생성하기

  • ① 좌측의 데이터 탭에서 검색창 우측에 드롭다운 메뉴를 클릭해서 '계산된 필드 만들기'를 선택한다
    • 필드명을 "배송 기간"으로 설정한다
    • 함수 입력 창에 DATEDIFF() 함수를 사용해 작성한다
      • 날짜_부분 매개변수에 'day'를 입력한다
      • 시작_날짜 매개변수에 Orders.csv에서 Order Date 컬럼을 끌어와 가져온다
      • 끝_날짜 매개변수에 Orders.csv에서 Ship Date 컬럼을 끌어와 가져온다
    • 그러면 배송 기간 컬럼이 생성 완료!
  • ② Orders.csv에서 행에 Order ID 컬럼, Order Date 컬럼, Ship Date 컬럼을 끌어와 가져온다 
    • Order Date 컬럼, Ship Date 컬럼은 드롭다운 메뉴에서 더 보기 / 'YY/M/D'로 보기 형식을 변경한다
  • ③ ①번에서 생성한 '배송 기간' 컬럼을 마크 메뉴 / 텍스트에 끌어와 가져온다
    • 단, 텍스트에 끌어다 놓기 전에 배송 기간 컬럼을 '불연속형으로 변환'을 선택해 데이터 타입을 변경해야 한다

LOD식 활용하기

  • LOD식(세부 수준 식): 현재 화면(VLOD)에 영향을 받지 않고 원하는 세부 수준에서 값을 계산할 수 있다
  • 세분화된 수준(INCLUDE), 덜 세분화된 수준(EXCLUDE), 완전히 독립적인 수준(FIXED)으로 총 3가지 수준이 있다
    보통 고객별 평균, 카테고리별 매출 합계와 같은 값을 계산하고자 할 때 LOD식을 활용하고, 실무에서는 3가지 수준 중에서 FIXED를 가장 많이 사용한다고 함
    • FIXED: 뷰에 있는 차원과 상관없이 계산된 필드에서 FIXED 계산식을 고정시켜 지정된 차원을 계산
    • INCLUDE: 뷰에 지정된 차원 뿐만 아니라 모든 차원을 포함해서 계산 INCLUDE는 보통 평균과 함께 활용함
    • EXCLUDE: 차원을 제거해서 계산

[실습1] - LOD식 활용하기

좌측 VLOD를 보면 Country/Region을 기준으로 Sales 합계를 계산하고 있지만, 우측 FIXED를 보면 Region을 기준으로 Sales 합계를 계산하고 있음을 확인할 수 있다
좌측 VLOD와 비교해서 우측의 EXCLUDE를 보면 세부 수준에서 Country/Region을 제외했기에 상위 수준이 Region별로 측정값이 계산되어 있음을 확인할 수 있다
좌측 VLOD를 보면 카테고리별로 모든 매출을 더한 후 각 카테고리의 행의 개수로 나누어 평균을 구하는 데에 반해, 우측 INCLUDE를 보면 지정한 Sub-Category 수준에서 평균을 구하고서 그 다음에 상위 카테고리의 평균값을 구하는 방향으로 평균을 계산한다

  • ① 각 LOD식은 좌측 데이터 탭에서 검색창 우측의 드롭다운 메뉴 중 '계산된 필드 만들기'를 선택해 다음의 필드들을 생성한다
    • FIXED : {FIXED [Region] : SUM([Sales])}
    • EXCLUDE : {EXCLUDE [Country/Region]:SUM([Sales])}
    • INCLUDE : {INCLUDE [Sub-Category]:AVG([Sales])}

 


 

대시보드 설계와 구성

대시보드 구축 프로세스

  1. 대시보드 뷰어 및 목적 선정
    • 뷰어(ex. 마케팅팀, 경영진 등)에 따라 선정할 지표가 달라짐
    • 대시보드를 만드는 목적 예시: 프로덕트 분석, 전사 KPI 확인 등
  2. 문제 정의
  3. 필요한 데이터 선정 및 데이터 마트 구축 강의에선 다루지 않지만 실무에서 많이 하는 작업!
  4. 지표 선정
  5. 스케치
  6. 시각화
  7. 대시보드 완성

대시보드 기본 기능

  • 바둑판식 기능: 컨테이너와 뷰가 서로 겹치지 않으며, 전체 대시보드 크기에 따라 크기가 자동 조정된다
  • 부동 기능 자유도가 높다는 점에서 바둑판식보다 부동 기능을 많이 사용함
    • 피그마와 부동 기능을 활용해 대시보드를 만들기도 함
      현업에서는 의사결정에서 활용하기 위해 대시보드를 빠르게 만들어야 하기에 피그마까지 활용해 대시보드는 만들진 않지만, 
      예쁘고 전문적인 포트폴리오를 만들기 위해 피그마를 활용해 대시보드 레이아웃을 만들 수 있음

태블로 저장하기

  • 태블로 서버 및 태블로 클라우드 게시하기
  • 다른 이름으로 통합 문서 저장하기
    • .twbx : 데이터 원본을 포함하고 대시보드 저장
    • .twb : 데이터 원본을 포함하지 않고 대시보드 저장