저번 포스팅에이어 전처리를 좀 더 해준 후 데이터 분석을 해보겠습니다.
목표
- 점포 별 판매량의 추이를 그래프로 표현
- 상품의 종류를 나누어 표현
- 가장 많이 팔린 점포만 확인
1. 상품의 종류를 나누어서 표현
정규식 apply 함수를 사용하여 상품들을 분류하여 주겠습니다.
위 처럼 분류한 데이터를 이용하여 'Non Type' 을 제외한 데이터들을 시각화 해보겠습니다.
loc에 조건을 주어 'Non Type' 을 제외 시킨 후 info 함수를 통해 데이터를 확해보았다.
데이터를 확인 해보니 '판매량' 컬럼이 수치형 타입이 아닌 범주형 타입을 가지고 있다.
판매량의 타입을 int 형으로 변환 시켜줄려고 하니 오류가 발생하였다.
',' 와 같은 기호 떄문에 변환이 되지 않는 것이다.
replace 함수를 이용하여 ',' 를 제거 해준 후 astype 함수를 이용하여 int type으로 변환해주었다
2. 가장 많이 팔린 점포 확인
피벗 테이블 함수 : pivot_table()
pivot_table() 함수의 구성요소는 다음과 같습니다
- 행 인덱스 : 행에 위치할 열 - index
- 열 인덱스 : 열에 위치할 열 - columns
- 데이터 값 : 값 - value
- 데이터 집계함수 : 집계함수 - aggfunc
그럼 pivot_table()을 사용하여 가장 많이 팔린 점포를 확인 해보겠습니다.
reset_index()로 index에 넣어두었던 '점포명','제품군'을 다시 빼주었습니다.
정렬을 이용하여 판매량이 높은 순서대로 정렬 하겠습니다.
DataFrame을 정렬하기 때문에 sort 함수가 아닌 sort_values 함수를 사용 하였습니다.
3. 점포 별 판매량의 추이를 그래프로 표현
Data를 시각화 해주는 Ploty 를 사용하여 시각화를 해보겠습니다.
라이브러리를 설치 해준 후
이전에 사용하던 그래프들과 다르게 구간 별로 볼 수 도 있는 아주 강력한 라이브러리 인 거 같습니다.
참고 : Pandas를 이용한 회사에서 나오는 엑셀 데이터 처리 (Apply / Pivoting / Save) #Python #파이썬 (youtube.com)
엑셀 전처리된 데이터로 대시보드 만들기 ! (Dash / Plotly / VScode) #Python #파이썬 (youtube.com)