카테고리 없음

배달앱 데이터로 본 3가지 소비 패턴 시각화 파이썬 코드

carosy 2025. 5. 8.
반응형

🍱 배달앱 데이터로 본 3가지 소비 패턴 시각화 파이썬 코드 완전 정복! 📊🐍


안녕하세요, 여러분! 😊 요즘 ‘배달앱’은 우리 일상에 빼놓을 수 없는 친구가 되었죠? 🍕🍜 특히 코로나19 이후로 배달 서비스가 폭발적으로 성장하며 소비 패턴에도 큰 변화가 생겼는데요. 혹시 여러분도 “우리 동네는 어떤 메뉴가 인기일까?”, “시간대별로 주문 패턴이 어떻게 변할까?” 궁금하지 않으셨나요? 🤔

오늘은 배달앱 데이터를 통해 대표적인 3가지 소비 패턴을 파악하고, 이를 멋지게 시각화하는 파이썬(Python) 코드를 단계별로 소개할게요! 📈🎉 데이터 분석부터 시각화까지 한 번에 훑어보며 실전에 바로 적용해보실 수 있도록 알차게 준비했습니다.


🔎 1️⃣ 배달앱 데이터 이해하기: 왜 시각화가 필요한가? 📊

배달앱 데이터에는 소비자 행동의 진짜 모습이 담겨 있어요.

  • 소비 시간대별 패턴: 아침, 점심, 저녁 언제 주문이 몰릴까?⏰
  • 지역별 인기 메뉴: 우리 동네는 치킨? 피자? 아니면 한식? 🍗🍕🍲
  • 고객 연령대별 선호도: 20대와 40대가 좋아하는 메뉴는 다를까? 👩‍🎤👴

하지만 원시 데이터(raw data)는 그 자체로 봐도 무슨 말인지 모르겠죠?
→ 그래서 바로 시각화(Visualization)! 눈에 확 들어오게 보여주면 인사이트가 팍팍 떠오릅니다! ✨


🧰 2️⃣ 준비물 ✔️ 파이썬 라이브러리와 데이터셋

아래 라이브러리를 꼭 설치하고 시작하세요! 🖥️

bash
pip install pandas matplotlib seaborn

  • pandas : 데이터 전처리와 분석
  • matplotlib : 기본 시각화
  • seaborn : 스타일리쉬한 통계 시각화

🛠️ 3️⃣ 데이터 로드와 기본 전처리

python
import pandas as pd

데이터 불러오기

data = pd.read_csv('delivery_data.csv')

상위 5개 데이터 확인

print(data.head())

결측치 확인

print(data.isnull().sum())

결측치 처리 (예: 삭제)

data = data.dropna()

💡 포인트: 데이터 컬럼 예시 — 주문 시간(order_time), 메뉴(menu), 지역(region), 연령대(age_group), 주문수(order_count)


🌈 4️⃣ 3가지 소비 패턴 시각화 코드 및 해설


1️⃣ 시간대별 주문 패턴 ⏰

python
import matplotlib.pyplot as plt
import seaborn as sns

주문시간을 datetime 타입으로 변환 후 시간만 추출

data['order_hour'] = pd.to_datetime(data['order_time']).dt.hour

시간대별 주문수 집계

hourly_orders = data.groupby('order_hour')['order_count'].sum().reset_index()

시각화

plt.figure(figsize=(12,6))
sns.lineplot(x='order_hour', y='order_count', data=hourly_orders, marker='o')
plt.title('시간대별 주문 건수 📈')
plt.xlabel('시간 (0~23시)')
plt.ylabel('주문수')
plt.xticks(range(0,24))
plt.grid(True)
plt.show()

📌 해설:

  • 주문이 많은 시간대가 언제인지 한눈에 파악 가능!
  • 점심(1113시), 저녁(1820시) 피크 타임 눈에 띄죠? 🍽️

2️⃣ 지역별 인기 메뉴 분석 🏙️🍗

python

지역별 상위 3 인기 메뉴 추출

top_menus = data.groupby(['region', 'menu'])['order_count'].sum().reset_index()
top_menus = top_menus.sort_values(['region', 'order_count'], ascending=[True, False])

지역별 상위 메뉴 시각화

top3_per_region = top_menus.groupby('region').head(3)

plt.figure(figsize=(14,8))
sns.barplot(x='order_count', y='menu', hue='region', data=top3_per_region, dodge=False)
plt.title('지역별 인기 메뉴 Top3 🍽️')
plt.xlabel('주문 건수')
plt.ylabel('메뉴')
plt.legend(title='지역')
plt.show()

포인트:

  • 지역 특성에 맞춘 마케팅 전략 수립에 도움
  • 예: 서울은 치킨, 부산은 해산물 메뉴 인기 등

3️⃣ 고객 연령대별 선호 메뉴 비교 👩‍🎤🧓

python
plt.figure(figsize=(16,10))
age_menu = data.groupby(['age_group', 'menu'])['order_count'].sum().reset_index()
top5_age_menu = age_menu.groupby('age_group').apply(lambda x: x.nlargest(5, 'order_count')).reset_index(drop=True)

막대 그래프

sns.catplot(data=top5_age_menu, x='order_count', y='menu',
hue='age_group', kind='bar', height=8, aspect=1.6)
plt.title('연령대별 인기 메뉴 Top5 🎯')
plt.xlabel('주문 건수')
plt.ylabel('메뉴')
plt.show()

🔔 중요:

  • 젊은층과 중장년층의 메뉴 취향 차이를 직관적으로 파악
  • 고객 맞춤형 프로모션 기획 시 대활약!

✅ 5️⃣ 실전 꿀팁 체크리스트

  • 데이터 전처리는 꼼꼼하게! 이상치, 결측치 처리 필수
  • 시각화는 눈에 쉽게 들어와야 성공! 복잡한 그래프 지양
  • 각 차트마다 제목과 축 레이블 달기로 가독성 UP
  • 자주 쓰는 컬러 팔레트 정리해두기 (예: sns.set_palette)
  • Interactivity 추가 고민해보기 (Plotly, Dash 등)

🔗 6️⃣ 추천 참고 자료 및 공식 사이트


🏁 7️⃣ 마치며: "배달앱 데이터, 나도 해낼 수 있다!" 💪

오늘은 배달앱 소비 데이터를 통해 고객들의 ‘시간대별 주문’, ‘지역별 인기 메뉴’, ‘연령대별 선호 메뉴’ 3가지 핵심 소비 패턴을

  • 📌 데이터 전처리
  • 📌 분석
  • 📌 시각화
    순서로 파이썬 코드를 제공하며 알아봤습니다.

🎯 이젠 단순히 배달 앱을 쓰는 소비자가 아니라, 데이터 속에 숨은 소비 트렌드를 읽는 ‘데이터 전문가’가 되실 수 있을 거예요!

💬 댓글로 여러분의 경험, 질문 남겨주세요!
오픈소스 협업과 질의응답은 언제나 환영입니다! 🚀


✅ 핵심 정리 📝

  • 배달앱 데이터 시각화로 시간, 지역, 연령대별 소비 패턴 파악 가능
  • pandas, matplotlib, seaborn 라이브러리로 쉽게 구현 가능
  • 소규모 데이터부터 시작해 점차 다양한 변수 시각화 도전해보자!
  • 참고자료 적극 활용해 데이터 분석 실력 UP!

🍀 지금 바로 코드로 도전해 보시고, 여러분만의 인사이트를 찾아보세요! 🍀


본 글은 배달앱 소비 데이터를 활용한 실용적인 데이터 분석과 시각화 가이드로, 여러분의 데이터 활용 능력을 한층 업그레이드해드립니다!


#배달앱 #데이터분석 #파이썬 #시각화 #pandas #matplotlib #seaborn #IT컴퓨터 #소비패턴 #빅데이터 #Python #DataVisualization #데이터과학

이전 글 보기!!

 

 

장비 없이 스마트폰만으로 4K 유튜브 라이브 스트리밍 구축하는 5단계 비법

🎥 장비 없이 스마트폰만으로 4K 유튜브 라이브 스트리밍 구축하는 5단계 비법 🎉여러분, 혹시 이렇게 생각해본 적 있으신가요?"전문 장비 없이도 스마트폰 하나로 선명한 4K 영상 라이브를 할

6.nowidol.com

반응형

댓글