날씨에 따른 배달 품목과 주문 건수 분석(2)

최민혁·2023년 11월 15일
0
post-thumbnail

📌 데이터 이관하기

SQL 을 통해 분석을 하기위해 MySQL Workbench에 데이터 이관.

🔎 데이터 확인하기

seoul_wd_db 데이터 세트는 2020년 1월 ~ 2020년 10월 까지 날씨 정보와 배달 주문 건수 및 품목이 포함된 데이터 입니다.

SELECT 'seoul_wd' AS table_name, 
COUNT(*) AS row_count
FROM seoul_wd;

1개의 table로 구성되어 있으며 table의 row 개수는 149823개 이다.

📊 데이터 탐색

🔎 월별 / 요일별 주문 건수 및 주문 품목

  • 월별 주문 건수

    월별 주문 건수 를 확인하여 봤을 때 10월이 18032건 으로 가장 많았으며 8월이 13092건 으로 가장 적었습니다.
    5월 달에는 15158건 이었으나 6,7,8 월 여름시기 때는 주문량이 점차 감소 되는 추세이며 9월 부터 다시 주문량이 증가하고 있습니다.

  • 요일별 주문건수

    요일별 주문 건수 에서는 목요일에 주문이 22343 건으로 가장 많았으며 월요일이 20314 건으로 가장 적었습니다.
    금,토,일(주말) 에 주문량이 가장 많을 거라 예상했었으나 주말 보다 목요일에 배달 주문이 더 많이 발생하는것을 알 수 있었습니다.

  • 요일 시간대별 주문건수 상위 10 / 하위 10

    요일-시간대별 주문건수 를 보면 목요일 19시에 2453건으로 가장 많았으며 일요일 3시가 27건으로 가장 적었으며 주문 건수가 많은 시간대를 보면 저녁 시간대인 17시 ~ 20시에 주문 건수가 가장 많았으며 새벽이나 낮 시간대 보다는 저녁 시간대 배달 주문건수가 많은것으로 보입니다.

🔎 기상별 주문건수 및 주문 품목

  • 날씨(기상) 별 주문 건수 및 품목

2020년 1월 부터 2020년 10월 까지 눈 (149) , 비 (1922) 번 이 내렸었으며 , 비와 눈이 내리는 날에 어떤 품목(음식)을 많이 주문했는지 알아보겠습니다.

  • 눈 이 내리는 날 주문품목 및 건수

  • 비 내리는 날 주문품목 및 건수
  • 눈 / 비 내리지 않는 날 주문 건수 및 품목

눈 , 비 , 아무것도 내리지 않는 날에 주문품목에 대한 주문건수를 알아본 결과 1가지 품목을 제외하고는 동일한 결과를 보였으며 , 사람들이 가장 많이 주문하는 음식은 날씨환경에 그리 큰 연관성이 없어 보입니다.

🔎 자치구별 주문건수 및 주문 품목

주문 건수가 많은 자치구 5곳과 적은 자치구 5곳 조회
자치구별 주문 건수가 가장 많은 주문 품목 과 적은 품목 5곳 조회

  • 주문 건수 상위 5

주문 건수 상위 5곳은 위 사진과 같으며 약 13,000건 ~ 27,000건 정도 주문이 발생였습니다.

  • 주문 건수 하위 5

주문 건수 하위 5곳은 위 사진과 같으며 약 2~5건 정도의 주문이 발생하였습니다.

  • 자치구별 주문 건수가 많은 주문 품목 5

자치구별 주문건수가 많은 주문 품목 상위 5곳을 조회한 결과
영등포구, 관악구, 구로구, 동작구, 금천구 이며 주로 치킨과 패스트푸드가 주문 건수가 많았으며, 이 지역들에서는 약 2,000 건 이상의 주문이 이 두 가지 음식에 대해 이뤄졌습니다.

  • 주문 건수가 적은 주문 품목 5

자치구별 주문건수가 적은 주문 품목 하위 5곳을 조회한 결과
광진구, 관악구, 동대문구, 용산구, 종로구 이며 주로 치킨 , 아시안/양식 , 심부름 이 주문건수가 적었으며 , 약 1~3건 정도의 주문이 발생하였습니다.

📊 변수간 상관관계

주문 건수에 대하여 기온,풍속,습도와 상관관계

selected_columns = ['TMPRT', 'WS', 'HD',]

# 상관관계 계산
correlation_matrix = seoul_wd[['ORDER_CASCNT'] + selected_columns].corr()

correlation_with_order_cascnt = correlation_matrix['ORDER_CASCNT']

# 결과 출력
print(correlation_with_order_cascnt)

결과를 보면 ORDER_CASCNT 와 각 변수들 간에 상관 계수가 매우 낮다는 것을 알 수 있으며 이는 두 변수간에 선형적인 관계가 없다는 것을 의미합니다.

📊 Anova 검정

from statsmodels.formula.api import ols
from statsmodels.stats.anova import anova_lm
import statsmodels.stats.multicomp as mc

# ANOVA 모델 설정
formula = 'ORDER_CASCNT ~ TMPRT + WS + HD'
model = ols(formula, data=seoul_wd).fit()

# ANOVA 수행
anova_result = anova_lm(model)
print("ANOVA Results:")
print(anova_result)

ANOVA 검정을 한 결과
각 독립변수에 따른 ORDER_CASCNT의 p_value 값이 0.05 보다 크므로
통계적으로 유의하지 않다 하는 결과가 나왔습니다.

📌 마무리

이번 분석을 시작하기 전에 배달 주문이 날씨에 어느 정도 영향은 있지 않을 까 생각하였지만, 날씨에 상관없이 많이 주문한 음식은 많이 주문하는 것 같습니다.

0개의 댓글

관련 채용 정보