카테고리 없음

개인 프로젝트

jaman 2025. 2. 10. 23:09

<고객에 대한 대시보드>

 

-2022년 기준 나이 구하기

 

 

-2022년 기주 나이 평균

 

 

-성별별 비율 구하기

 

일단 남자별 여자별 수 구하기

 

 

납자가 1, 여자가 0

 

남자

 

여자

 

 

-전체 성별 수

 

 

여자, 남자 비율

 

여자 비율

남자비율

 

-전체 customer 수

 

-연도별 first join date한 사람 수

색=평균 2022년 기준 나이

tetxt=customer id가 평균적으로 몇개인지

 

-city별 고객수

각 city별 booking한 사람들의 수

 

-양방향 대시보드

 

성별이 숫자로만 나와서 계산된 필드 만들기

 

양방향 그래프 만들기 위해서 계산된 필드 만들기

 

결과물

 

-first join date별 gender

 

 

<고객에 대한 대시보드>

 

(대시보드 만들때 주위해야하는거)

*** 가로 컨테이너 대시보드에 드래그-마우스 오른쪽 클릭후 균등 분배

 

맞춤  - 전체보기 하면 제목이 안 짤림

*그래프들도 전체 보기 해야 더 깔끔하게 보기 가능

 

<재방문에 대한 대시보드>

 

-재방문한 고객수

SUM(IF { FIXED [Customer Id]: COUNTD([Transaction Date]) > 1 } THEN 1 ELSE 0 END)

 

-거래한 날짜 수

거래한 날짜의 수 구하기

transaction date가 총 몇개인지 구하는 코드

 

-고객들이 방문한 횟수

고객이 방문한 횟수

fixed 모든 고객들을 각각 계산하게 도와줌

countD에서 중복된 고객들 걸러냄

 

-고객들의 재방문 여부

 

재방문 여부 코드

IF { FIXED [Customer Id]: COUNTD([Transaction Date]) } > 1 THEN 1 ELSE 0 END

 

-재방문율

재방문율

 

 

-코호트

 

재방문율

 

문자열로 바꾸기(에러나는 경우 이렇게 하기)

 

첫 구매 연도 컬럼(코호트)

{ FIXED [Customer Id] : MIN(DATETRUNC('day', [Transaction Date])) }

 

 

연도별 경과 연수(코호트)-첫 구매후 며칠 있다가 또 구매했는지 구하는 식

행에 드레그한뒤 year만 나오게 설정

DATEDIFF('day', [첫 구매 연도 컬럼(코호트)], [Transaction Date])

 

 

day= 날짜 간 차이를 일 단위로 계산

첫 구매 연도 컬럼=첫 구매 날짜로 지정된것

transaction Date=transaction이 발생한 날짜

 

 

*연도별 경과 연수는 평균이 나오게 설정함

 

 

 

-연도, 달이 나오게 코호트

code:

첫 구매달

{ FIXED [Customer Id] : MIN(DATETRUNC('month', [Transaction Date])) }

 

첫 구매 연도

{ FIXED [Customer Id] : MIN(DATETRUNC('year', [Transaction Date])) }

 

fixed[customer ID]-각 고객별로 독립적으로 구한다(ex: 고객 a,b,c가 있으면 각 고객 a,b,c별로 구한다는거)

예시:

  1. 고객 A:
    • 첫 번째 트랜잭션: 2020년 3월 10일
    • MIN(DATETRUNC('month', [Transaction Date])) → 첫 번째 트랜잭션 월은 2020년 3월
  2. 고객 B:
    • 첫 번째 트랜잭션: 2020년 5월 5일
    • MIN(DATETRUNC('month', [Transaction Date])) → 첫 번째 트랜잭션 월은 2020년 5월
  3. 고객 C:
    • 첫 번째 트랜잭션: 2021년 2월 1일
    • MIN(DATETRUNC('month', [Transaction Date])) → 첫 번째 트랜잭션 월은 2021년 2월

결론:

  • 각 고객에 대해 고객별로 첫 번째 트랜잭션 월을 계산하게 됩니다.
  • 이 방식은 고객마다 독립적으로 처리되므로, 각 고객의 첫 구매 월을 개별적으로 알 수 있습니다.

즉, FIXED [Customer Id]는 고객 A, B, C 각각에 대해 계산하고, 고객 A의 첫 구매 월, 고객 B의 첫 구매 월, 고객 C의 첫 구매 월을 각각 다르게 반환하는 방식입니다.

 

 

DATERUNC('month', [transaction date]): transaction date 월 단위로 나타내는것

예시: 2020년 5월 17일이 2020년 5월 1일로 변환

 

min:transaction중 가장 이른 날짜

고객 1명이 2020년 1월 3일, 2020년 2월 18일에 거래를 했다면 가장 이른 시기에 거래를 한게 채택됨, 이 경우 2020 1월 1일것이 채택

 

 

-도시별 재방문율

 

 

-재방문 많이 하는 시간

 

 

-총 방문한 고객 수

이번에도 중복 없이 셈

 

 

-재방문한 고객 수(자연수)

 

 

SUM(IF { FIXED [Customer Id]: COUNTD([Transaction Date]) > 1 } THEN 1 ELSE 0 END)

 

 

customerid를 기준으로 transaction date가 중복되는걸 빼고 몇개인지를 샌뒤 transaction date가 고유하게 2개 이상인 고객들의 수를 알려주는 코드

 

 

 

-방문 고객수 중 재방문한 고객수

 

 

 

-재방문한 사람들이 산 계절의 옷

 

-재방문항 사람들이 많이 산 target sex의 옷

 

 

-재방문한 고객들이 거래한 시간

 

대시보드

 

-재방문에 대한 대시보드

 

파이차트 경우 오른쪽에 보고 싶은 데이터 누르면 그것만 보기 가능

 

 

<이탈자들에 대한 대시보드>

 

-이탈자들 수(자연수)

 

 

-이탈한 사람들 비율

 

 

-이탈에 대한 코호트

재방문 한 사람들과 같은 코드를 썼다(색상에 대한 데이터만 이탈에 대한것)

 

코드 

첫 구매달

{ FIXED [Customer Id] : MIN(DATETRUNC('month', [Transaction Date])) }

 

첫 구매 연도

{ FIXED [Customer Id] : MIN(DATETRUNC('year', [Transaction Date])) }

 

-이탈한 사람들의 비율

 

 

-이탈한 사람들의 수(자연수)

 

-이탈한 사람들이 산 계절의 옷

 

 

-이탈자들이 많이 구매한 시간

 

-이탈한 고객들이 산 target sex의 옷

 

 

 

-이탈에 대한 대시보드