본문 바로가기

분류 전체보기178

유데미 스타터스 취업 부트캠프 4기 - 데이터분석/시각화(태블로) 2주차 학습 일지 2022.02.13 ~ 2022.02.17 2주차에는 다양한 데이터 셋을 다루며 집계 및 시각화를 해보았다. 연간 기온 변화와 같은 시계열 데이터도 있었고 폭염과 열대야라는 지표를 정의하고 이에 따라 필요한 데이터를 추출, 가공하기도 했다. 지역, 성별, 연령과 같은 범주형 데이터로 그룹핑 될 경우 그룹별 분포를 확인하기도 했다. 이번 학습 일지 역시 1주차에 이어서 서울시 가격안정 모범업소 상품목록 현황 데이터를 활용하여 다양한 집계와 시각화를 복습하려 한다. 사용 데이터 서울시 가격안정 모범업소 상품목록 현황 가격이 저렴하고 서비스가 좋은 가격안정모범업소(착한가게)들의 상품목록 정보에 대한 OpenAPI 서비스입니다. 지방물가안정을 위해 해당 업소를 발굴·이용토록 하여 지방물가 안정에 기여하고자 합니.. 2023. 2. 19.
분석이 하고 싶니? 죽도록 하고 싶은거야? 요즘 하는 생각... 1. '데이터 분석 = 끼워맞추기'다? 데이터 분석에 앞서 데이터를 통해 무엇을 알고 싶은지, 이를 확인할 수 있는 지표를 어떻게 정의할지, 확인한 사실로 무엇을 하고 싶은지 문제를 정의하게 되는데 간혹 이 과정을 '결론을 내 놓고 데이터를 끼워맞춰서 해석한다'로 오해하게 되는 경우가 있다. 데이터를 다루는 실무자로서도 충분히 혼란에 빠질 만하고 그래서 뭘 어떻게 하라는 건지 결론이 시급한 유관부서라면 더더욱 이렇게 생각하기 쉬울 것 같다. 그래서 끼워맞추는 데이터 분석을 하지 않으려면 가설과 검증의 사고방식이 탑재되어야 하지 않을까 생각한다. 정의한 문제, 추측한 원인을 기반으로 현상(데이터)을 분석하고 추측한 원인(가설)이 아닐 시 다시 원인을 추정하는 식으로... 사실 가설 자.. 2023. 2. 13.
유데미 스타터스 취업 부트캠프 4기 - 데이터분석/시각화(태블로) 1주차 학습 일지 2022.02.06 ~ 2022.02.10 1주차에는 파이썬과 익숙해지는 시간을 가졌다. 특히 데이터를 불러오고 기본적인 탐색과 시각화를 하는 사고의 흐름을 익힐 수 있었다. 기존에 정규화된 데이터만 다뤄 봤기 때문에 공공데이터와 같이 방대한 로우데이터를 다루는 것이 항상 부담스러웠는데 패턴화와 반복으로 조금은 익숙해진 것 같다. 그래서 이번 학습 일지에서는 실습 데이터 외에 직접 공공데이터를 내려받아 복습해보기로 했다. 여러 가지 집계를 적용해보기 좋은 상품이나 가격 정보가 있는 데이터를 찾아보았다. 사용 데이터 서울시 가격안정 모범업소 상품목록 현황 가격이 저렴하고 서비스가 좋은 가격안정모범업소(착한가게)들의 상품목록 정보에 대한 OpenAPI 서비스입니다. 지방물가안정을 위해 해당 업소를 발굴·이용.. 2023. 2. 12.
야 너두 수요 예측 할 수 있어! - 이동 평균 데이터 분석은 예측이다 방향성, 대상, 목표, 규모, 패턴, 전략 수립 등 통찰을 원하는 모든 행위가 더 나은 내일을 위한 것이라면 데이터 분석은 모두 예측을 위한 행위라고 할 수 있다. 출처: 한 달 공부 데이터 분석(71p) 시계열 분석은 과거의 데이터를 바탕으로 미래의 상황을 예측하는 데이터 분석 방법이다. 시계열 분석 방법 중 가장 기본이 되는 이동평균법으로 매출 수요를 산출해보고 실제 해당 년도의 매출과 얼마나 일치하는지 비교해보려고 한다. 이동평균에 의한 수요 예측은 다음의 두 가지를 고려한다. 이동평균은 장기적인 예측보다 다음 차수의 예측값을 확인하는 데에 적합하다 이동평균을 구해 예측할 때는 언제나 예측값에 따른 변화와 실제 매출 추이를 비교하고 점검한다 필요 데이터 2 ~ 3개년의 월별 .. 2023. 2. 3.
왜 내가 한 데이터 분석은 그저 그런 것일까? - 문제 정의 “데이터 분석을 통해 상황을 파악하고 문제를 정의한다”는 말의 의미 갖고 있는 데이터를 적당히 만지다 보면 어떤 추세나 특징을 파악할 수는 있겠지만 이를 통해 알 수 있는 사실은 제한적이다. 그래서 이미 알고 있는 내용의 그저 그런 분석에 그치게 되는데 이 때 선행되어야 하는 것이 ‘문제 의식’이다. 문제 의식은 무엇을 알고 싶은지, 이를 확인할 수 있는 지표를 어떻게 정의할지, 확인한 사실로 무엇을 하고 싶은지 객관적인 주장을 합리적인 결론으로 도달하게 하는 문제 해결 중심의 사고방식이다. 특히 내가 가장 어려움을 느낀 부분은 현상과 문제, 원인을 구분해서 정의하는 것인데 이것도 앞서 연습한 가설-검증 방법 수립처럼 훈련이 필요하다. (사실 문제 정의 단계가 선행되어야 한다) 따라서 겉으로 드러난 현상.. 2023. 1. 30.
지표 개선은 어떻게 하는 거에요? - 가설과 검증 목표 지표가 있다는 전제하에 지표를 개선하기 위해서는 '어떤 액션이 지표에 영향을 주었는지' 확인해야 한다. 지표를 개선하려면 1) 달성하고 싶은 지표를 결정한다. 2) 사용자 행동 중에서 지표에 영향을 많이 줄 것으로 보이는 행동을 결정한다. 3) 2)에서 결정한 행동 여부와 횟수를 집계하고 1)에서 결정한 지표를 만족하는 사용자의 비율을 비교한다. 예) [목표] 다음날 지속률을 개선하고 싶다 [가설] 다음날 지속해서 사용하는 사용자는 등록 당일에 특정 액션을 취하지 않을까? [검증] 등록 당일에 액션을 했는지 여부를 집계하고 다음날 지속률 비율을 비교한다 출처: 데이터 분석을 위한 SQL 레시피(301p) 돌려 돌려 말했지만 결국 특정 액션 여부와 횟수에 따라 지표의 결과가 어떠한지 액션과 지표의 관.. 2023. 1. 13.
[Tableau] 고객 세분화 관리를 위한 대시보드(1) - 고객 세분화 그룹 구하기(RFM) 지난번에 RFM 사용자 그룹 정의에 따라 SQL로 고객 세분화 그룹을 구했었는데 이번에는 동일한 작업을 태블로로 구현해보았다. 결과물 ▼SQL로 고객 세분화 그룹 구하기▼ 사용자 분석 - RFM 구하기 충성고객에게 혜택을 주는 이벤트를 기획 중입니다 구매금액이 큰 순서로 충성고객 리스트를 뽑아주세요 문제 정의하기 충성고객은 장기적이고 지속적인 관점에서 서비스 온보딩 여부(+사용자 hyeyun133.tistory.com 필요한 데이터 주문 데이터(+주문 상세 데이터), 유저 데이터 필드 생성 1) 기본 필드 연산하기 Number of Order: 주문수 COUNTD([Order No]) Max Order Date of the Year: 년도별 최신일자 {FIXED YEAR([Order Date]): MAX.. 2023. 1. 12.
사용자 분석 - 리텐션에 영향을 주는 액션 구하기 우리 서비스의 주간 리텐션을 알고 싶어요 리텐션을 높이려면 어떻게 해야 하나요? 문제 정의하기 리텐션은 고객이 유지되는 비율로 잔존율이라고도 표현한다. 사용자가 서비스를 지속적으로 이용하는데에는 다양한 요인이 복합적으로 작용하므로 단순히 기능 추가나 UI 개선으로 리텐션 개선의 본질적인 문제를 해결할 수 있다고 보기 어렵다. 따라서 리텐션에 긍정적/부정적 영향을 주는 요인을 강화/제거하는 방향으로 접근하는 것이 바람직하다. 가령 14일 차의 리텐션을 개선하고 싶다면 7일 차의 리텐션 판정 기간 동안 사용자가 어떠한 액션을 했는지 조사한다. 리텐션에 영향을 주는 액션의 사용률이 낮다면 사용자들이 해당 액션을 할 수 있게 설명을 추가하거나 이벤트를 통해 액션 사용을 촉진하고 사용자 시나리오와 동선 등도 함께.. 2023. 1. 9.
데이터 과학 도서 목록(2023.01.04 ~) 저자의 의도와는 무관한 주관적인 분류입니다. 💚 표시한 책은 재독/소장 예정입니다(추천!) 통계 통계학(2021) 통계학 - YES24 일상생활에 필요한분석력과 예측력을 기른다!우리 생활 주변에는 수없이 많은 데이터가 있다. 그것을 계산하여 평균을 내거나 흐름을 보거나 분류를 하여 다양한 분야에 활용, 응용할 수 있다. www.yes24.com 💚 이렇게 쉬운 통계학(2019) 이렇게 쉬운 통계학 - YES24 성공적인 비즈니스를 위한 교양 통계! 거시적 관점에서 이해하고 활용 포인트 파악하기 이 책은 통계학을 구성하는 다양한 요소를 저자 나름의 방식으로 이해하기 쉽게 이미지화하여 전달한다. www.yes24.com Do it! 첫 통계 with 베이즈(2021) Do it! 첫 통계 with 베이즈 -.. 2023. 1. 4.
[SQL] 데이터 정합성 검증하기(3) - 이상값 이상값: 너무 많거나, 너무 적을 때 이상값은 엄연히 따지면 에러는 아니지만 분석에 방해가 되는 노이즈에 해당되기 때문에 전처리가 필요하다. 이상값 역시 이상값의 여부를 먼저 확인하고 이상값의 원인이 되는 요인을 제거해주는 방식으로 접근한다. 1) 데이터의 분산 확인하기 이상값을 찾는 방법 중 하나는 분산을 확인하고 분산에서 많이 벗어난 값을 찾는 것이다. ① 세션 별 조회수 구하기 → 어떤 세션의 조회수가 극단적으로 많다면 크롤러이거나 내부 IP일 가능성이 있다. with session_cnt as ( select session, count(session) as cnt from action_log_with_noise group by session) select session, cnt, rank() ov.. 2023. 1. 2.