본문 바로가기

캡스톤디자인

메인 데이터 분석 및 전처리

French bakery daily sales

https://www.kaggle.com/datasets/matthieugimbert/french-bakery-daily-sales

 

French bakery daily sales

Forecast sales for a French bakery

www.kaggle.com

 

- 2021/01/01~ 2022/09/30 약 21개월 간의 daily transaction details of customers 데이터

- yearly, weekly saisonalities(seasonality 복수형) 관찰 가능

- 234005 entries, 136000 transactions

 

 

데이터 변수 분석

총 6개의 column 존재

 

date: date order
time: time order
ticket number: identifier for every single transaction
article: name of the product sold (in French)
quantity: quantity sold
unit_price: price per product

데이터 일부분 예시

* 데이터 형식

 

데이터 전처리 계획

1. null 값 존재하는지 확인 

→ 존재한다면 결측치 대체 ? or drop ? → 실험적으로 결정

 

2. 중복된 값 존재하는지 확인

→ 존재한다면 drop

 

3. article 품목 unique() 통해서 어떤 품목들이 존재하는지 확인+ 품목이 프랑스어로 되어있는데 이거를 영어 혹은 한국어로 바꿀지 고민해보기

 

4. 데이터 형식 바꾸기

- Quantity: float → int

- unit_price: object → float

- ticket_number: float → int

- article: object → str

 

5. 각 변수의 범위 확인하기: check if any value is negative

 

6. 날짜에 대응하는 weekday 추가: 요일과 판매량간의 관계 확인 위해

 

7. grouping한 데이터셋 만들기

- 날짜 기준 grouping → 날짜(시계열 데이터)에 따른 흐름 파악 

- 요일 기준 grouping → 요일과 판매량 간의 관계 파악

- 품목 기준 grouping → 품목과 판매량 간의 관계 파악

- 시간 기준 grouping(아침, 점심, 저녁으로 categorize하기?) → 시간과 판매량 간의 관계 파악

- price 기준 grouping(price의 범위 확인하고 n개로 categorize) → 가격과 판매량 간의 관계 파악

 

⇒ 해당 grouping을 두 개씩 묶어서도 진행 ... 등등 해보기

 

 

+ 프랑스의 휴일과 한국의 휴일이 다르므로, 프랑스의 휴일 특성(?)을 추가하여 해당 데이터를 학습할 시에 모델이 프랑스의 휴일을 학습하여 나중에 한국의 베이커리 데이터에 적용할 경우 노이즈 발생 가능 → 프랑스 휴일을 고려할지는 조금 더 고민해보기 

 

 

추후 계획

- 보조변수 데이터 분석

- 시계열 예측 모델 후보

- 예상 서비스 흐름도 & 구조도, 패키지