날짜 타입으로 변환
pd.to_datetime(날짜데이터, format = '입력되는 날짜 형식')
-> date = pd.Series(['03-01-2023', '03-02-2023', '03-03-2023'])
date = pd.to_datetime(date, format = '%d-%m-%Y') #입력받은 날짜 데이터 형식이 '%d-%m-%Y'!

shift : 시계열 데이터에서 시간의 흐름 전후로 정보를 이동시킬 때 사용
# 전날 매출액 열을 추가합시다.
temp['Amt_lag'] = temp['Amt'].shift() #default = 1
# 전전날 매출액 열을 추가.
temp['Amt_lag2'] = temp['Amt'].shift(2) # 2행 shift
rolling.집계함수
-> 시간의 흐름에 따라 일정 기간 동안 평균을 이동하면서 구하기
- rolling(n) :
- n 기본값은 1
- min_periods : 최소 데이터수
# 7일 이동평균 매출액을 구해 봅시다.
temp['Amt_MA7_1'] = temp['Amt'].rolling(7).mean()
temp['Amt_MA7_2'] = temp['Amt'].rolling(7, min_periods = 1).mean() #하나라도 있으면 평균을 구해라
diff : 특정 시점 데이터, 이전시점 데이터와의 차이 구하기
temp['Amt_D1'] = temp['Amt'].diff() #현재에서 이전데이터 빼기
temp['Amt_D2'] = temp['Amt'].diff(2) #현재에서 전전값 빼기
Q1. 전날 매출액
data['Groc_lag']=data['Grocery'].shift()
Q2. 7일 전(전주 동 요일) 매출액
data['Groc_lag7'] = data['Grocery'].shift(7)
Q3. 3일 이동평균 매출액
data['Groc_MA3'] = data['Grocery'].rolling(3).mean()
Q.4 전날대비 매출액 증감여부 (증가 1, 감소 -1, 동일 0)
data['Groc_diff'] = data['Grocery'].diff()
data['Groc_diff'] = np.where(data['Groc_diff']<0,-1,np.where(data['Groc_diff']>0,1,0))
# data.loc[data['diff'] >0 , 'diff'] = 1
# data.loc[data['diff'] ==0 , 'diff'] = 0
# data.loc[data['diff'] <0 , 'diff'] = -1
'데이터 분석' 카테고리의 다른 글
데이터 전처리 (1) | 2023.10.29 |
---|---|
시각화 라이브러리 (0) | 2023.08.20 |
데이터 축소 - 특징 선택 (0) | 2023.08.02 |
데이터 변환 - 특징 생성 (0) | 2023.08.02 |
데이터 변환 - 정규화, 구간화 (0) | 2023.08.02 |