본문 바로가기
통계/데이터 분석 기초

Python Pandas 실무 데이터 분석 : 엑셀 데이터 전처리 4 (apply / Pivoting / Save / Ploty)

by 만슨 2024. 3. 26.

 

저번 포스팅에이어 전처리를 좀 더 해준 후 데이터 분석을 해보겠습니다.

 

목표

  1. 점포 별 판매량의 추이를 그래프로 표현
  2. 상품의 종류를 나누어 표현
  3. 가장 많이 팔린 점포만 확인

 

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)