본문 바로가기
IT

[TIL] kaggle 와인 데이터 분석_17일차(프로젝트 진행 순서,전처리,데이터 형식)

by 공부하죠 2024. 4. 23.
반응형

저번 시간(TIL_14일차)에 이어서 와인 데이터 분석을 시작하겠습니다.

 

분석에 앞서 문제 상황을 인식 • 이해하고 여기(목적)에 맞는 주제를 찾고 컬럼 간의 어떤 연결고리가 있을지 추론해 보고 분석하여 의미 있는 인사이트와 액션을 도출해야 합니다.


✏️목차 📖

1. 프로젝트 진행 순서

2. 와인 가격 분석 배경

3. 데이터 분석 과정 

4. 데이터 형식 설명

5. 전처리 과정


1. 프로젝트 진행 순서🧩

1) 분석 목적 : 목적과 목표를 설정하여 분석 방향성을 설정

  1-1) 프로젝트 개요 :  왜? 이 프로젝트를 수행하는지 간단히 설명

  1-2) 목적과 목표 설정 : 예상되는 결과에 대한 간략한 언급

 

2) 데이터 수집 : 데이터를 수집하는 과정과 데이터 형식 설명

  2-1) 데이터 수집 방법 : 어디서 데이터를 얻었는지 설명

  2-2) 데이터 형식 설명 : 데이터가 어떤 형태인지 간단히 소개

  2-3) 데이터 수집 과정 : 데이터 수집 과정에서의 어려움 및 해결책

 

3) 데이터 전처리 : 데이터를 이해하고 분석에 필요한 형태로 가공

  3-1) 결측치 처리 : 누락된 정보가 있는지 확인하고 채우기

  3-2) 이상치 탐지 및 처리 : 이상한 값을 찾아서 수정

  3-3) 데이터 정규화 & 표준화 : 데이터를 이해하기 쉽게 변환하기

 

4) 데이터 분석 : 분석 목적에 방향성에 맞게 분석 실행

  4-1) 기초 통계량 분석 : 분석 방향성에 맞게 통계 설정

  4-2) 시각화를 통한 데이터 탐색 : 간단한 그래프나 표를 통해 데이터를 시각화

  4-3) 변수 간 상관 관계 분석 : 데이터 간의 연관성 찾기

 

5) 결과 해석 : 해석 후 인사이트 도출 및 추후 방향성 제시

  5-1) 해석 및 인사이트 도출 : 결과를 어떻게 해석할 수 있는지 소개

  5-2) 개선 및 분석 방향성 : 추가 개선 사항 및 추후 분석 방향

 

6) 결론 : 주요 결과 요약 및 한계점 & 개선 사항 설명

  6-1) 프로젝트 요약 : 프로젝트 요약

  6-2) 한계점과 개선 사항 : 결과에서 한계점과 개선 사항을 설명

  6-3) 추후 분석 및 발전 방향 : 발전 가능성을 제시하여 방향성을 설정

 

7. 참고 자료 : 도움이 된 자료 또는 참고한 웹페이지 링크


2. 와인 가격 분석 배경📌

배경 1. ‘올바른 와인문화 정착에 기여하고 최고의 고객만족을 지향합니다.’

 

배경 2. 현지 직거래, 대량발주를 통한 운송비 절감, 유통마진 최소화 등 유통 구조 개선을 통해 수입 주류의 가격 거품을 제거하고 있는 신세계엘엔비 기업에 입사한 여러분입니다.

 

배경 3. 단순히 상품을 구입하고 유통하는 것에서 그치지 않고 합리적인 라이프스타일과 가치를 전달하며 고객 만족을 더욱 높일 것을 약속합니다.


3. 데이터 분석 과정 💨

1) 데이터 활용 : 와인 정보 데이터 활용

2) 분석단계

  2-1) 데이터 수집 및 전처리

  2-2) 탐색적 데이터 분석 (EDA) : 시각화 진행

3) 분석 결과물에 담겨야하는 내용

  3-1) 전처리 진행 내용

  3-2) 탐색적 데이터 분석 결과 : 시각화 및 해석, 변수간 상관 관계

  3-3) 분석을 진행하며 배운점/아쉬운점 :분석시 추가되면 좋을 데이터( 데이터 수집 방법까지 고민 )

  


4. 데이터 형식 설명

전체 데이터 수: 21572

 

INT

id 와인 ID
price 가격
year 생산년월
ml 용량

VARCHAR

name 와인 이름 producer 생산자
nation 원산지 local(1~4) 지역(1~4)
varieties(1~12) 품종(1~12) type 종류
use 용도 abv 도수
degree 온도 sweet 단맛 순위
acidity 산도 순위 body 바디 순위

 


5. 전처리 과정🍀

원본 데이터

SELECT id, name, producer, nation, local1, local2, local3, local4, varieties1, varieties2, varieties3, varieties4, varieties5, varieties6, varieties7, varieties8, varieties9, varieties10, varieties11, varieties12, `type`, `use`, abv, `degree`, sweet, acidity, body, tannin, price, `year`, ml
FROM wine.wine_info;

 

[💡 TIP 💡] DBeaver에서 원본 데이터 찾는 방법

Columns에서 오른쪽 마우스 클릭 'Read data in SQL console' 클릭하면 나옵니다.

이런 식으로 나옵니다.

 

1)  애매한 숫자범위를 정확한 값(두 수의 평균,소수점 반올림)으로 수정 :  15~16 → 15.5

ROUND((CAST(SUBSTRING_INDEX(abv, '~', 1) AS FLOAT) + CAST(SUBSTRING_INDEX(abv, '~', -1) AS FLOAT)) / 2, 2) AS avg_abv_평균도수

 

2) 문자와 숫자가 포함된 와인 맛 척도 정수로 표현 :  sweet4 → 4

SUBSTR(sweet, 6, 1) AS sweet

 

3)  중요도가 낮은 컬럼 제거

SELECT문에 적지 않으면 됩니다.

 

4)  다양한 용량을 1ml 당 가격(소수점 반올림)으로 변경 ( 제일 밖  서브 쿼리 적용 )

ROUND(price/ml, 1) price_per_ml

 

5)  가격이 null 값인 행 삭제

WHERE price IS NOT NULL

 

6) 용도 중 하나만 보고싶다면 ( 서브 쿼리 적용)

where `use` like '%Dessert%'

 

7) null이 아닌 공백 상태(빈칸)로 되어있는 것을 null로 변경

NULLIF(varieties1, '') AS varieties1_null_replaced

 

 

다음 내용은 탐색적 데이터 분석(EDA) 부터 차례차례 블로그에 기록하겠습니다!!😽


🍀위에 있는 내용은 스파르타코딩클럽에서 배운 내용을 기반으로 작성했습니다.🌻

저번 시간(TIL_14일차)이 궁금하시면 여기를 클릭 🌷

DBeaver 를 설치하는 방법을 알고싶다면 여기를 클릭 🌼

SQL를 기초부터 공부하고 싶다면 여기를 클릭 🌼

 

반응형