본문 바로가기

분류 전체보기

(67)
캐글 통신사 고객 데이터로 데이터 분석 - 유지고객과 이탈고객 간의 계약기간 차이 분석 캐글의 통신사 고객 데이터를 활용한 네 번째 분석!이전 포스팅에서는 데이터의 기본적인 파악과 고객 유형별 이탈률 차이, 계약 유형(Contract)에 따른 고객 이탈률을 살펴보았다. 이번 포스팅에서는 유지 고객과 이탈 고객 간의 계약 기간 차이를 분석하여 고객 이탈과의 연관성을 알아본다. 1. 계약 기간(tenure) 분포 분석먼저, 전체 고객의 계약 기간 분포를 확인하였다.sns.histplot(x = df['tenure'], bins= 15, kde= True, color= '#2c594e')# plt.set(xlabel= 'Tenure', ylabel= 'Frequency')plt.title('[계약기간 분포]', fontsize = 18, weight = 'bold', pad=12)plt.yla..
[solvesql] SQL 풀어보기 - 전력 소비량 이동 평균 구하기 ✔️ 문제전력 소비량 측정은 매 10분마다 시작해 10분간 진행하는 방식이고, measured_at 컬럼에 측정 시작 시각이 기록되어 있습니다. 전력 소비량은 순간순간 크게 변화하는 값이기에 트렌드를 보거나 수요 예측을 하기 위해서 단순 이동 평균을 자주 사용 합니다. 2017년 1월 1일 0시부터 2017년 2월 1일 0시까지 10분 단위로 3개 발전소 전력 소비량의 1시간 범위 단순 이동 평균을 계산하는 쿼리를 작성해주세요.✔️ LEVEL 4 📌 주요 요구사항1시간 단위 이동 평균 구하기 (10분 단위 데이터 → 현재 행 + 이전 5개 행 평균 계산)측정 시간(measured_at)에 10분을 더한 값으로 출력2017년 1월 1일 0시부터 2017년 2월 1일 0시까지 데이터만 필터링SELECT D..
[AARRR 분석] 캐글 이커머스 데이터와 SQL로 실습해보기 4 (재구매 분석) 유지율 분석 - 첫 구매 제품과 재구매율의 관계이번에는 유지율(Retention) 분석을 계속해서 진행해보았다.특히, 첫 번째로 구매한 제품의 카테고리에 따라 고객이 다시 재구매하는지를 분석하는 것이 목표였다.즉, 우리 서비스를 한 번 경험한 고객이 다시 찾아오는가? →  AARRR 프레임워크 중 3. Retention(유지) 단계 분석!단순히 첫 번째 구매 후 다시 구매했는지 여부만 보는 것이 아니라,어떤 제품을 처음 구매한 고객이 재구매를 많이 하는지를 카테고리별로 분석해보았다. 이 분석을 통해 재구매율이 높은 상품을 첫 구매로 유도하는 마케팅을 하면 고객 유지율을 높일 수 있을 것이다!  1.  첫 구매 제품과 재구매율의 관계📌 분석 과정고객별 첫 구매 시점을 찾는다 → 고객별 첫 구매 날짜(fi..
[solvesql] SQL 풀어보기 - 유량(Flow)와 저량(Stock) (누적합구하기) ✔️ 문제 ‘연도별로 새롭게 소장하게 된 작품의 수’와 같이 일정 기간 동안 측정되는 지표를 ‘유량(Flow) 지표’라고 하고, ‘누적 소장 작품 수’와 같이 특정 시점에 측정되는 지표를 ‘저량(Stock) 지표’라고 합니다. 미술관의 소장 규모를 파악하기 위해 연도별로 새롭게 소장하게 된 작품의 수와, 연도별 누적 소장 작품 수를 계산하는 쿼리를 작성해주세요. 소장 년도 정보가 없는 작품은 집계에서 제외해주세요. 결과 데이터에는 아래 세 개 컬럼이 포함되어야 하며, Acquisition year 컬럼을 기준으로 오름차순 정렬되어 있어야 합니다. ✔️ LEVEL 4  📌 주요 요구사항 유량(Flow) 지표 : 연도별 새롭게 소장한 작품의 수저량(Stock) 지표 : 연도별 누적 소장 작품의 수소장 연도..
[solvesql] SQL 풀어보기 - 폐쇄할 따릉이 정류소 찾기 2 ✔️ 문제 폐쇄할 정류소를 검토하기 위해 2019년 10월 한 달 동안 정류소에서 발생한 대여/반납 건수가 2018년 10월 같은 정류소에서 발생한 대여/반납 건수의 50% 이하인 정류소를 출력하는 쿼리를 작성해주세요.  2018년 10월 대비 2019년 10월 정류소 대여/반납 건수 비율 값은 소수점 아래 셋째 자리에서 반올림해 둘째 자리까지 출력되어야 합니다. ✔️ LEVEL 3 📌 주요 요구사항2018년 10월 한 달간 정류소에서 발생한 대여/반납 건수 조회2019년 10월 한 달간 정류소에서 발생한 대여/반납 건수 조회두 개의 비율을 계산하여, 2018년 대비 2019년 대여/반납 건수가 50% 이하인 정류소 출력비율 값은 소수점 아래 셋째 자리에서 반올림하여 둘째 자리까지 출력with ren..
[SQL] TEMP TABLE vs 일반 테이블 vs WITH(CTE) vs VIEW 비교 정리 데이터베이스에서 복잡한 쿼리를 최적화하고 효율적으로 사용하기 위해  일반 테이블, TEMP TABLE(임시 테이블), WITH(CTE), VIEW(뷰) 를 활용할 수 있다.각 방법마다 장단점이 다르기 때문에, 상황에 따라 적절한 방식을 선택하는 것이 중요하다!✅ 일반 테이블이란?일반 테이블은 데이터베이스에 영구적으로 저장되는 테이블이다.모든 트랜잭션이 끝나도 데이터가 유지되며, INDEX를 사용할 수 있어 검색 성능이 좋다.📌 일반 테이블이 필요한 이유데이터를 영구적으로 저장해야 할 때INDEX를 활용해서 빠르게 조회해야 할 때여러 트랜잭션에서 데이터를 공유해야 할 때예를 들어, 상품 데이터처럼 지속적으로 유지되어야 하는 정보CREATE TABLE products ( product_id INT PRIM..