728x90 데이터 분석13 데이터 분석을 위한 SQL 레시피 8장 공부 데이터를 무기로 삼기 위한 분석 기술검색 기능 평가하기검색 기능 개선 방법검색 키워드의 흔들림을 흡수할 수 있게 '동의어 사전 추가'하기흔들름 : 검색 엔진의 키워드를 설명할 때 역시 단어가 정확하지 않고 조금 떨리는 현상검색 키워드를 검색 엔진이 이해할 수 있게 '사용자 사전 추가'하기검색 결과가 사용자가 원하는 순서로 나오게 '정렬 순서 조정'하기 NoMatch 비율 집계NoMatch 비율검색 총 수 중에서 검색 결과를 0으로 리턴하는 검색 결과 비율select to_char(stamp, 'YYYY-MM-DD') AS dt , count(1) as search_count , sum(case when result_num = 0 then 1 else 0 end) as no_match_count , avg.. 2024. 6. 14. 데이터 분석을 위한 SQL 레시피 7장 공부 데이터 활용의 정밀도를 높이는 분석 기술세션별로 페이지 열람 수 랭킹 비율 구하기PERCENT_RANK의 값은 (rank - 1) / (전체수 - 1)with session_count as ( select session , count(1) as count from action_log_with_noise group by session)select session , count , rank() over(order by count desc) as rank , percent_rank() over(order by count desc) as percent_rankfrom session_count; 데이터 타당성 확인하기로그 데이터의 요건을 만족하는지 확인하는 쿼리select action -- session은 .. 2024. 6. 14. 코호트 분석(Cohort Analysis) 코호트 분석특정 기간 동안 특정 경험을 공유한 집단 간의 행동 패턴을 비교 및 분석하는 방법코호트특징이 비슷한 사용자들을 그룹화하는 것 코호트 분석 사용고객의 행동 파악그룹의 특정 기간 동안의 행동 변화를 정량적으로 측정하고 서로 비교이벤트 후에 고객의 행동 패턴이 어떻게 변했는지를 파악하고 빠르게 변화하는 시장 수요에 더 민감하게 반응 가능고객의 유지율 개선 & 이탈률 감소고객 유지율 개선에 기여하는 원인을 찾아내고 그 요소를 강화 가능이탈을 초래하는 원인을 파악한 뒤 이에 맞추어 대응 가능LTV(고객 생애 가치)를 높이는데 도움이 됨고객 맞춤형 마케팅 전략 수립고객 그룹의 행동 패턴을 파악하여 더 효과적인 타겟 마케팅 전략을 진행 가능 코호트 분석 결과 활용 예시유지율 분석충성도 평가유지율이 시간이 .. 2024. 6. 14. 데이터 분석을 위한 SQL 레시피 6장 공부 웹사이트에서의 행동을 파악하는 데이터를 추출URL 경로정규표현식substirng(url from '//[^/]+([^?#]+)// : URL에서 프로토콜의 끝 부분 다음에 오는 두 개의 슬래시를 찾기[^/]+ : 슬래시가 아닌 문자가 하나 이상 연속되는 부분을 찾기[^/] : /가 아닌 모든 문자+ : 플러스 기호는 앞의 패턴이 하나 이상 반복됨을 의미([^?#]+) : 물음표나 샵 기호가 아닌 문자가 하나 이상 연속되는 부분을 찾아 추출( ) : 괄호는 캡처 그룹을 나타내며, 이 그룹 안의 내용을 추출[^?#] : ?나 #이 아닌 모든 문자+ 예) " https://chaemi720.tistory.com/manage/newpost/376?type=post&return"-> /manage/newpost/.. 2024. 6. 13. RFM 분석 RFM 분석으로 사용자를 3가지 관점의 그룹으로 나누기RFMRecency : 최근 구매일최근 무언가를 구매한 사용자를 우량 고객으로 취급Frequency : 구매 횟수사용자가 구매한 횟수를 세고, 많을수록 우량 고객으로 취급Monetary : 구매 금액 합계사용자의 구매 금액 합계를 집계하고, 금액이 높을수록 우량 고객으로 취급즉, 사용자별로 얼마나 최근에, 얼마나 자주, 얼마나 많은 금액을 지출했는지에 따라 사용자들의 분포를 확인하거나 사용자 그룹(또는 등급)을 나누어 분류하는 분석 기법사용자별로 RFM을 집계하는 쿼리with purchase_log as ( select user_id , amount -- 날짜 , substring(stamp, 1, 10) as dt from action_log .. 2024. 6. 13. 데이터 분석을 위한 SQL 레시피 5장 공부 사용자를 파악하기 위한 데이터 추출유저가 특정 기간 동안 기능을 얼마나 사용하는지 집계 COUNT(*) == COUNT(1)-- 로그 전체의 유니크 사용자 수 구하기with stats as ( select count(distinct session) as total_uu from action_log )select l.action -- 액션 UU(unique users) , count(distinct l.session) as action_uu -- 액션 수 , count(1) as action_count -- 전체 UU , s.total_uu -- 사용률 , 100.0*count(distinct l.session) / s.total_uu as usage_rate -- 1인당 액션 수 , 1.0*count(1.. 2024. 6. 12. 이전 1 2 3 다음 반응형