오랑우탄의 반란
[Tableau] 랜딩 페이지 A/B 테스트 대시보드 제작 과제 실습 본문
반응형
과제 설명
PO의 요청 업무: 실험 결과를 분석할 수 있는 대시보드 작업을 진행해주세요! [실험 상황 시나리오] 이커머스 K사는 웹사이트의 랜딩 페이지 UI 실험을 진행했습니다. 유저를 실험군과 대조군으로 나누어 랜딩 페이지 구 버전 A안과 새 버전 B안을 비교하여 약 1달 동안 실험이 진행 되었어요. 실험 결과 데이터는 ab_data.csv 파일에 쌓였습니다. A/B 테스트의 성공 지표를 컬럼 converted(페이지 전환 유무)를 활용하여 두가지 랜딩 페이지 실험 결과를 검증하고 싶습니다. |
✅ 실험 진행 기간: 약 1달간(2017/1/2 - 1/24) ✅ 실험 대상: 총 약 29만명 랜딩 페이지 유입 유저 → 실험군(약 14만명), 대조군(약 14만명) ✅ 실험 목표: 유저의 랜딩 페이지 전환율 상승 ✅ 성공 지표(실험이 성공했다고 판단할 수 있는 지표): conversion rate(%) ✅ 실험 검증 방법: t-test |
(참고) t-test 개념 귀무가설 : 일반적인 사실 또는 우리가 실험에서 틀리길 바라는 가설 대립가설 : 우리가 실험에서 맞다고 입증하고자 하는 가설, 차이가 있음을 실험을 통해 입증하고자 하는 가설 p-value : 귀무가설이 맞다는 가정에서 실제 실험 결과와 같이 귀무가설을 지지하는 결과가 나올 확률을 의미합니다. 예를 들어, 두 그룹의 평균을 비교하는 실험에서 귀무가설이 “두 그룹의 평균은 같다”라면, p-value는 두 그룹의 평균이 같다는 결과가 나온 확률입니다. p-value가 임의의 수준(0.05)보다 작으면 귀무가설이 잘못되었을 가능성이 높기 때문에 기각하고, 대립가설을 채택합니다. 가설 검정(t-test): 두 그룹 간의 차이가 통계적으로 유의미한지를 검정하는 방법 중 하나입니다. 일반적으로 서로 독립적인 두 그룹간의 비교를 통해 두 그룹의 평균값이 다른지를 검정합니다. t-test 결과, 귀무가설이 기각되면 두 그룹 간의 차이는 통계적으로 유의미하다는 것을 의미합니다. |
유의사항 ✅ 대시보드 뷰어: 프로덕트팀 구성원(Product Owner, Product Analyst, UI Designer, Software Engineer) ✅ 지표 선정: conversion rate(%): 랜딩 페이지 전환율 ✅ 대시보드 구성: - 레이아웃 규격: 일반 데스크톱 모니터(1920 x 1080) - 컬러: 컬러 팔레트 자유롭게 활용(참고 사이트) |
사용 데이터
칼럼 설명
- user_id: 유저 아이디(약 29만명)
- timestamp: 2017-01-02 ~ 2017-01-24
- group: 대조군(control), 실험군(treatment)
- landing_page: old_page, new_page
- converted: 랜딩 페이지 전환 유무(1,0)
데이터 시각화
시트1: 그룹별 유저 비중 파이 차트 시각화
- 마크: 파이 차트
- 색상: Group
- 각도: User Id 카운트(고유)
- 레이블: Group, 전체 카운트 (숫자 서식 백분율)
- 마크 레이블 표시
시트2: 그룹별 평균 전환율 막대 그래프 시각화
- 열: Group
- 행: Converted 평균
- 색상: Group
- 레이블: Group, Converted 평균(숫자 서식 백분율) & 합계
- 마크 레이블 표시, 머릿글 표시 해제
시트3: 일별 그룹별 평균 전환율 선 그래프 시각화
- 열: Timestamp 일
- 행: Converted 평균
- 색상: Group
- 축 편집: 범우 사용자 지정으로 시작과 끝 조정
- 마크 레이블 표시 , 머릿글 표시 해제
시트4: 그룹별 유저 고유 카운트 요일별 캘린더 차트 만들기
- 열: Timestamp 년월, 요일
- 행: Group, Timestamp 주
- 색상: User Id 카운트 고유
- 레이블: Timestamp 일, User Id 카운트 고유
- 머릿글 표시 해제, 워크시트 서식 테두리, 라인 조정
시트5: 데이터 정합성 체크 & 전처리 작업
control인데 new page, treatment인데 old page인 경우 유저 아이디 제거
- 계산된 필드 만들기
- 해당 필드 필터로 적용
- 텍스트: Group, Converted 합계로 확인
([Group] = 'control' AND [Landing Page] = 'old_page') OR
([Group] = 'treatment' AND [Landing Page] = 'new_page')
시트6: 도넛 차트 활용 평균 전환율 지표 카드 만들기
- 시트5에서 생성한 필터 적용
- 도넛차트 베이스
- 마크: 파이차트, 색상: Group, 각도: Converted 평균, 레이블: Group, Converted 합계
- 계산 필드 생성: 'Dummy Axis' MIN(1)
- 행: Dummy Axis 두 번 끌어다 넣고 두번째 인스턴스 우클릭 후 이중 축 설정
- 도넛차트 내부 원
- 새로 생성된 AGG(Dummy Axis) (2)에서 작업
- 마크: 원, 색상 배경색으로 설정, 각도 제거, 크기 조정
- 축 머릿글 표시 해제
시트 7: start date와 end date 매개변수 필터 만들기, 유저 카운트
- 매개 변수 만들기
- start date: 데이터 유형: 날짜, 현재 값: 실험 시작일, 허용 가능한 값: 범위, 최솟값, 고정으로 설정
- end date: start date 복제 후 범위 조정 (마지막 일 + 1 로 해야 마지막 일까지 표시됨)
- 필터 생성: Timestamp 계산 필드 생성 후 범위 입력
- 열: Timestamp 일
- 행: User Id 카운트 고유
- 필터: Filter Correct, date rage 참
[Timestamp] >= [start date]
AND
[Timestamp] <= [end date]
시트 8: t-test 텍스트 표시
왜 t-test인가요?(ratio test 해야하는거 아닌가요?) 태블로에서 구현할 수 있는 간단한 검정 방법이 t-test입니다. 제공 데이터 양이 많아서 정규 근사됩니다.
- 그룹별 평균, 분산, 크기 구해서 t-value 구하기
- t-value 를 활용해 p-value 로 변환 (참고문서)
- 텍스트: t-value, p-value, 실험 결과에 대한 설명
# mean diff
AVG(IF [Group] = 'control' THEN [Converted] END) - AVG(IF [Group] = 'treatment' THEN [Converted] END)
# variance / size
VAR(IF [Group] = 'control' THEN [Converted] END) / COUNT(IF [Group] = 'control' THEN [Converted] END)
# tvalue
[mean diff] /SQRT([var/size1]+[var/size2])
# pvalue
2*(0.5*EXP(-1.2*POWER(ABS([tvalue]), 1.3)))
대시보드 제작
반응형
'TABLEAU' 카테고리의 다른 글
[Tableau] 한 눈에 보는 테이블 구조와 스키마 종류 (0) | 2024.09.04 |
---|