https://steadiness-193.tistory.com/155
위 포스팅과 연결됩니다.
데이터 불러오기
시간대별 매출
[방법1]
InvoiceDate를 인덱스로 설정 → hour만 뽑아내서 groupby 이용
우선 인덱스로 설정해주고
lambda 함수를 이용해서
hour만 뽑아낸 뒤 이를 이용해서 그룹핑하면 된다.
시각화
시간대별 매출
[방법2]
dt 연산자 → 시간 컬럼 생성 → 시간 컬럼으로 groupby
dt 연산자를 이용해 hour만 뽑아내서 컬럼으로 추가했다.
이제 Hour 컬럼으로 그룹핑해서
원하는 값을 뽑아내면 된다.
시각화
그래프를 보니 12시까지는 완만히 상승하다가
13시 이후에는 감소 추세를 보인다.
이후 15시 이후부터는 급격히 줄어드는 경향을 보인다.
Top10 판매 제품
StockCode로 그룹핑하여
판매량 Quantity가 높은 순으로 정렬했다.
Top10 매출 제품
StockCode로 그룹핑하여
매출 CheckoutPrice가 높은 순으로 정렬했다.
판매 Top3 제품의 월별 판매량 추이
인덱싱에 이용할 상위 판매 StockCode의
상위 3개의 인덱스를 저장해 놓는다.
set_index와 사용자 정의 함수, 그리고 하나의 컬럼을 groupby에 이용한다.
https://steadiness-193.tistory.com/156
자세한 내용은 위 포스팅 참조
이렇게 하나의 컬럼을 인덱스로 설정한 다음
또 다른 하나의 컬럼을 groupby에 입력하고
groupby에 사용자 정의 함수를 넣어서
제품코드와 연월별로 집계해서 데이터를 뽑아낼 수 있다.
여기서 필요한 CheckoutPrice 컬럼만 뽑아내 시각화해보자
맨 왼쪽의 막대그래프 데이터를 보니
23166 제품은 2010년 1월에 압도적으로 매출이 높아, 계절성 한정판 제품이거나
1월에 이벤트성으로 판매를 했을 가능성이 있다.
중간에 제일 높은 막대그래프 데이터는
23843 제품의 2011년 12월 매출이다.
23843 제품은 오직 2011년 12월 매출만 있다.
이벤트 또는 한정판 제품일 가능성이 높아 보인다.
위의 monthly_top3는 아래와 같은 방법으로도 만들 수 있다.
위 방법으로 시각화를 하면
xticks가 살짝 더 복잡해보이지만
값은 변화 없다.
'Pandas > 실전' 카테고리의 다른 글
판다스 - 가상 쇼핑몰 고객 주문 데이터 : 우수 고객 찾기, 고객 코호트 분석 (0) | 2020.07.21 |
---|---|
판다스 - 가상 쇼핑몰 고객 주문 데이터 : 고객 코호트(cohort) 분석 (0) | 2020.07.21 |
판다스 - 가상 쇼핑몰 고객 주문 데이터 : 연월별 매출, 요일별 매출 (1) | 2020.07.20 |
판다스 - 가상 쇼핑몰 고객 주문 데이터 : 전체 매출, 국가별 매출 (0) | 2020.07.20 |
판다스 - 가상 쇼핑몰 고객 주문 데이터 : 전처리, Data cleansing, 메모리 효율화 (3) | 2020.07.20 |