Mini Project/글로벌 음주 데이터 분석

글로벌 각국의 음주 데이터 분석하는 프로젝트: 데이터로 이야기하는 술 문화 🌍

Allen93 2024. 12. 15. 12:37
오늘은 제가 진행한 데이터 분석 프로젝트인 Analyzing Alcohol by Country에 대해 소개드리겠습니다. 이 프로젝트는 세계 각국의 음주 데이터를 분석하여 술 문화와 소비 경향을 파악하고, 이를 데이터 시각화로 직관적으로 표현하는 작업을 목표로 했습니다.

전세계 알콜 분석

 

 

프로젝트 소개

목적

이 프로젝트의 핵심 목표는 세계 여러 나라의 음주 데이터를 분석하고, 이를 통해 나라별 술 소비 경향 및 패턴을 시각적으로 이해하는 것입니다.
이를 통해 지역적, 문화적 특성이 음주량에 어떻게 영향을 미치는지 알아보고, 데이터에서 숨겨진 흥미로운 사실을 발견하고자 했습니다.


활용 가능성

  1. 공중 보건 및 정책 분석: 음주 데이터는 국가별 건강 정책 수립에 중요한 기초 자료로 활용될 수 있습니다.
  2. 산업적 활용: 음료 산업에서 지역별 시장 동향 파악.
  3. 데이터 스토리텔링: 데이터를 기반으로 한 인사이트 도출과 시각화.

사용 기술 및 도구

1️⃣ Python

  • 데이터 처리 및 분석의 중심 언어로 사용.
  • Pandas, NumPy 등 강력한 데이터 처리 라이브러리를 활용.

2️⃣ 데이터 시각화

  • Matplotlib, Seaborn, Plotly를 통해 직관적이고 이해하기 쉬운 시각화 생성.
  • Geopandas를 사용하여 세계 지도를 기반으로 소비량을 표현.

3️⃣ 데이터셋

  • 프로젝트에 사용된 데이터는 각국의 연간 음주량, 술의 종류별 소비량(맥주, 와인, 증류주 등), 인구당 소비량 등을 포함.

주요 분석 내용

1. 나라별 연간 음주량 비교

데이터를 정리하여 나라별 연간 음주량을 계산하고 이를 시각화하였습니다.

  • Python 코드 예제
import pandas as pd
import matplotlib.pyplot as plt

# 데이터 로드
data = pd.read_csv('alcohol_consumption.csv')

# 나라별 평균 소비량 계산
country_avg = data.groupby('country')['total_litres_of_pure_alcohol'].mean()

# 시각화
plt.figure(figsize=(12, 6))
country_avg.sort_values().plot(kind='barh', color='skyblue')
plt.title('Country-wise Average Alcohol Consumption')
plt.xlabel('Litres of Pure Alcohol')
plt.ylabel('Country')
plt.show()
  • 결과:
    연간 음주량 상위 국가와 하위 국가를 비교하여, 지역적, 문화적 차이를 시각적으로 나타냅니다.

2. 술의 종류별 소비 경향

맥주, 와인, 증류주 등의 소비량을 분석하여 각국의 술 선호도를 확인했습니다.

  • Python 코드 예제
# 술 종류별 소비량 분석
beverages = data[['beer_servings', 'spirit_servings', 'wine_servings']].mean()

# 시각화
beverages.plot(kind='bar', color=['gold', 'silver', 'maroon'])
plt.title('Global Average Consumption by Beverage Type')
plt.ylabel('Servings')
plt.show()
  • 결과:
    • 맥주 소비량이 높은 국가: 독일, 체코 등.
    • 와인 소비량이 높은 국가: 프랑스, 이탈리아 등.
    • 증류주 소비량이 높은 국가: 동아시아, 동유럽 일부 국가.

3. 세계 음주량 지도 시각화

Geopandas를 활용하여 음주량 데이터를 세계 지도 위에 시각적으로 표현했습니다.

  • Python 코드 예제
import geopandas as gpd
import matplotlib.pyplot as plt

# Geopandas 데이터와 음주 데이터 병합
world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
world_data = world.merge(data, how='left', left_on='name', right_on='country')

# 지도 시각화
world_data.plot(column='total_litres_of_pure_alcohol', cmap='coolwarm', legend=True, figsize=(15, 10))
plt.title('Global Alcohol Consumption Map')
plt.show()
  • 결과:
    세계 각국의 음주량을 시각적으로 비교할 수 있어, 지역별 차이가 한눈에 들어옵니다.

성과와 배운 점

성과

  1. 데이터에서 흥미로운 인사이트 발견
    • 와인 소비량이 높은 유럽 국가들은 맥주나 증류주보다 와인을 더 선호하는 경향이 뚜렷했습니다.
    • 아프리카 일부 국가에서는 음주량이 매우 낮거나 거의 없는 경우도 발견되었습니다.
  2. 시각화 역량 향상
    • Geopandas를 활용한 지도 기반 데이터 시각화는 데이터의 지역적 차이를 명확히 보여주는 데 효과적이었습니다.
    • Plotly와 Matplotlib을 병행하며 인터랙티브 시각화도 구현.
  3. 데이터 전처리 경험 축적
    • 누락 데이터 처리, 이상치 탐지 및 제거 등 데이터 전처리 과정에서 실질적인 경험을 쌓았습니다.

배운 점

  1. 데이터 스토리텔링의 중요성
    데이터를 단순히 분석하는 것을 넘어, 사람들에게 흥미롭게 전달할 수 있는 스토리를 만들어내는 것이 중요함을 깨달았습니다.
  2. 시각적 표현의 힘
    단순한 숫자가 아닌 시각화를 통해 데이터를 전달했을 때, 이해도와 설득력이 크게 증가했습니다.
  3. 문화적 맥락 이해의 필요성
    단순한 데이터 분석을 넘어, 각국의 문화적, 사회적 배경을 이해하고 이를 데이터와 연결하는 작업이 중요하다는 것을 배웠습니다.

앞으로의 발전 방향

  1. 추가 분석 지표 도입
    • 소득 수준, 건강 데이터와 음주량 간의 상관관계를 분석하여 더 깊은 인사이트를 도출.
    • 시간대별 변화(트렌드 분석) 추가.
  2. 인터랙티브 대시보드 제작
    • Plotly Dash를 활용해 웹 대시보드로 전환, 사용자와 상호작용이 가능한 시각화 제공.
  3. 머신러닝 도입
    • 음주량 데이터를 기반으로 음주 문화의 변화 예측 모델을 구축.

https://github.com/siilver94/Analyzing-Alcohol-by-country/tree/main

 

GitHub - siilver94/Analyzing-Alcohol-by-country

Contribute to siilver94/Analyzing-Alcohol-by-country development by creating an account on GitHub.

github.com