[#1] Python Sample Project : 마트 수요 예측

박다은·2024년 2월 14일

Python 문법

목록 보기
1/2

Process01 : 판매 추이 분석

자료를 날짜형으로 바꿀 때

import datetime
df['컬럼명'] = pd.to_datetime(df['컬럼명'])

화씨온도 > 섭씨온도 변환

df['Temperature']= (df['Temperature']-32) / 1.8

날짜 기준으로 오름차순 정렬

df = df.sort_values(by=['Date'])

최솟값, 최댓값

df['Date'].min(), df['Date'].max()

Process02 : 변수별 매출 영향도 분석

import matplotlib.pyplot as plt

subplots() : 여러 개의 그래프 동시에 출력하기

fig, ax = plt.subplots(O열, O행)

twinx() : x축만 공유하고 y축은 따로 쓰기

y_right = plt.twinx()
ax2 = ax1.twinx()

적용해보면...

# 온도와 주간 판매량, 온도가 올라가면 판매량이 적어지고 온도가 낮아지면 판매량이 증가하는 약소한 경향
fig, ax1 = plt.subplots()
ax1.plot(df1['Date'], df1['Weekly_Sales'], color='green', label='WeeklySales')

ax2 = ax1.twinx()
ax2.plot(df1['Date'], df1['Temperature'], color='deeppink', label='Temp')

plt.gcf().set_size_inches(25, 6)
fig.legend()
plt.show()

corr() : 상관계수를 구하는 함수

df_corr = df1.drop(['Store', 'Holiday_Flag', 'Date'], axis=1)
df_corr.corr()

heat map 분석

#  연속형 변수를 제외하고 Heat map 분석
df_corr = df1.drop(['Store', 'Holiday_Flag', 'Date'], axis=1)
sns.heatmap(df_corr.corr(), vmin = -1, vmax = +1, annot = True, cmap = 'coolwarm');
plt.gcf().set_size_inches(6, 6)

scatter plot : 산점도

#Unemployment와 주간 판매량 간의 산점도(Scatter plot)
sns.scatterplot(x='Temperature', y='Weekly_Sales', data=df1);
plt.gcf().set_size_inches(7, 7)

Process3 : ML 활용 구매량 예측

날짜변수 -> 일, 월로 쪼개기

df1['Dayofweek'] = df1['Date'].dt.dayofweek
df1['month'] = df1['Date'].dt.month
profile
DA 취뽀 도전기!

0개의 댓글