본문 바로가기

분류 전체보기339

[SQL] 데이터의 종류 트랜젝션 데이터 서비스와 시스템을 통해 사용자의 행동을 기록한 데이터 : 구매 데이터, 리뷰 데이터, 게임 플레이 데이터 등 날짜, 시각, 마스터 데이터의 회원 ID, 상품 ID, 수량, 가격 등이 포함되는 경우가 많음 사용자 또는 운용 상의 이유로 변경되거나 제거될 수 있음 👉 트랜젝션 데이터를 기반으로 리포트를 만드는 경우가 많다. (단, 마스터 데이터가 필요함) 마스터 데이터 서비스와 시스템이 정의하고 있는 데이터 : 카테고리 마스터, 상품 마스터, 회원과 관련된 정보 등 트랜젝션 데이터와 마스터 데이터를 결합해서 리포트 업무의 폭을 넓힘(상품 이름, 카테고리, 발매일 까지 확인) 로그 데이터 누적형 데이터라는 점이 포인트 : 출력 시점의 정보를 축적해두는 것 로그 출력 이후에 가격이 변경되거나 사.. 2024. 1. 25.
[RFM Customer Segmentation] #3-2. Segment별 고객리스트와 RFM 평균 막대 차트 1. Segment별 고객리스트 RFM 필드 생성 STR([Recency Score])+STR([Frequency Score])+STR([Monetary Score]) 고객 이름 리스트 생성 행 선반에 Customer Name, Order Date(년), Customer Segment, RFM 올려두기 Sales, Profit, Number of Orders를 차례로 그래프(표)에 추가 Order Date 컬럼명을 Year로 바꾸기 Year 필드를 생성 : Year([Order Date]} Year 필드를 차원으로 변경 >> 행 선반의 Order Date 위에 올려주기 서식 조정 Customer Name 위 우클릭 >> 서식 음영/행 색상 교차 >> 다음과 같이 수정 2. RFM 막대 차트 RFM Sc.. 2024. 1. 24.
[RFM Customer Segmentation] #3-1. 고객 Segment별 주문 건수 Tree Map 🎯 다음과 같이 연도별 RFM Segment 에 따른 주문 건 수 비율 차이를 볼 수 있는 트리맵을 만든다. 연도 필터 만들기 연도를 선택하면 연도에 맞게 RFM 지표가 계산될 수 있도록 하기 위해 먼저 생성 Max Order Date of the Year 필드 생성 : 특정 연도 별로 order date의 최댓값 계산 Recency 필드 만들기 일 수 차이를 계산하되, 고객/연도별로 가장 최근(max)의 구매일자와, 위에서 만든 전체 필드에서 동일 연도 내 가장 최근 구매일자 차이를 계산 DATEDIFF('day', {FIXED [Customer Name], YEAR([Order Date]): MAX([Order Date])}, [Max Order Date of the Year]) Frequency 필.. 2024. 1. 24.
[RFM Customer Segmentation] #2. Sales Trend 제작 #1에 이어서, Sales, Profit, Customer 수에 대한 추세선 그래프를 만든다 ▶︎ Sales Trend 선 그래프 Order Date를 열 선반에 >> 연속형, 월로 변환 Sales를 행 선반에 >> 복사해서 한 번 더 넣어주고, 이중축(최고점, 최저점 점 찍기용) dot-sales 필드 생성 : 라인 그래프 위에 매출 최고/최저/가장 최근점 찍기 위함 IF SUM([Sales]) = WINDOW_MIN(SUM([Sales])) THEN 'min' ELSEIF SUM([Sales]) = WINDOW_MAX(SUM([Sales])) THEN 'max' ELSEIF LAST()=0 THEN 'most recent' END 두번째 마크 카드를 '원'으로 바꾸고 dot-sales를 색상에 올려주.. 2024. 1. 22.
[RFM Customer Segmentation] #1. KPI 제작 대시보드 주요 개념 1. Customer Segmentation 고객의 행동 유형을 기반으로 고객을 분류하는 것 👉 고객 개인의 특성에 맞춘 세밀한 마케팅으로 효과를 증대시키고 매출을 극대화하는 개인화 마케팅에 활용 2. RFM Analysis CRM(Customer Relationship Management) 마케팅 분야에서 가장 널리 사용되는 고객 세분화 모델 RFM R (최근 구매 여부) : 고객이 얼마나 최근에 구매했는가? F (구매 빈도) : 고객이 얼마나 자주 방문했는가? M (구매 금액) : 고객이 돈을 얼마나 썼는가? 기준별 점수를 합산하여, 동일한 점수의 고객들을 하나의 그룹으로 분류 다음과 같이 분류하기도 한다 대시보드 목표 고객 세그먼트 별 비중을 한눈에 볼 수 있음 해당하는 고객 리.. 2024. 1. 22.
[User Retention Dashboard] #2. 리텐션 분석을 위한 코호트 차트 리텐션 분석을 위한 코호트 차트 ▶︎ 다음과 같이 주차별 리텐션 비율을 볼 수 있는 코호트 차트를 만들어본다 1. 시작하기 #1에서 만든 First Event Cohort를 행선반에 올리고 >> 정확한 날짜로 변경 UserID를 Option키를 누른 상태에서 레이블에 드래그 >> 카운트 고유 마크 유형을 '사각형'으로 변경 👉 다음과 같이 각 주차에 처음 플레이한 유저 수가 나타남 2. 계산된 필드 생성 & 코호트 차트 만들기 몇 주가 지나서 다시 유입되었는지 계산하는 필드 👉 Returning After How many Weeks DATEDIFF 를 사용, 첫 유입 시점으로부터 Event Time 까지 소요된 시간을 '주' 단위로 추출 DATEDIFF('week',[First Event Cohort],.. 2024. 1. 22.
[User Retention Dashboard] #1. Weekly 신규/누적 유입 유저 그래프 🎯 다음과 같은 코호트 개념을 적용한 대시보드를 제작해본다. 🎯 최종 대시보드는 다음과 같으며 이번 포스팅에서는 오른쪽의 신규 유입 유저와 누적 유입 유저 그래프를 제작한다 ** 데이터는 일자별 접속 UserID, Event Time으로 구성된다(대시보드 작성을 위한 더미 로그) 1. 주차별(Weekly) 신규 유입 유저 수 시작하기 행선반에 UserID >> 카운트 고유 UserID를 레이블 마크카드에 올려두기 UserID 별로 최초로 플레이한 시점 구하기 계산된 필드 : First Event Cohort 생성 👉 유저 아이디별, 가장 최초로 방문한 이벤트 타임만 반환 First Event Cohort 데이터 타입을 '날짜'로 변경 First Event Cohort 를 열 선반에 >> 우클릭(정확한 날.. 2024. 1. 22.
[HackerRank] Interviews (Advanced Join) 풀이 Advanced Join / Hard 문제 ✨ 문제 링크 : https://www.hackerrank.com/challenges/interviews/problem?isFullScreen=true contest_id, hacker_id, name 별로 다음 컬럼의 합계를 구해야한다. sums of total_submissions & total_accepted_submissions & total_views & total_unique_views for each contest 👉 주어진 컬럼 자체를 JOIN 하지 않고, 서브쿼리로 합계 컬럼을 각각 가공한 후 해당 테이블을 JOIN 하는 방법을 사용하여 해결한다. 풀이 1. contest_id, hacker_id, name 컬럼이 들어있는 Contest 테이블을.. 2024. 1. 17.
[HackerRank] Occupations (Pivot) Advanced Select / Medium Level 문제 ✨ 문제링크 : https://www.hackerrank.com/challenges/occupations/problem?isFullScreen=true 다음과 같은 테이블을 피봇 하여, Doctor, Professor, Singer, and Actor 컬럼 순으로 해당 직업에 해당하는 사람 이름이 알파벳 순으로 정렬되게 만들어야 한다. 풀이 1. 테이블 확인 먼저 테이블은 위 예시와 동일하게 이름/직업 순으로 되어 있다. SELECT * FROM OCCUPATIONS 2. 직업별로 이름을 알파벳 순으로 정렬하고 번호 매기기 문제 조건 중 직업별로 피봇 하되, 알파벳 순으로 이름을 정렬하는 점이 있다. 그리고 피봇 결과는 1, 2, 3행 별로 위.. 2024. 1. 17.
728x90