일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- list
- Ai
- 코딩테스트
- 코딩
- Python
- 데이터
- 인공지능
- 데이터과학
- git
- 파이썬
- 클래스
- 알고리즘
- Java
- dictionary
- numpy
- 백준
- 자바
- 모각코
- AIVLE
- 정처기 실기
- KT AIVLE
- AI학습
- KT
- github
- ai 전문가 과정
- AI 윤리
- 데이터분석
- 정처기
- pandas
- LG Aimers
Archives
- Today
- Total
무향향수
[Python] 시계열 데이터 처리 본문
시계열 데이터란
행과 행에 시간의 순서(흐름)가 있고
행과 행의 시간 간격이 동일한 데이터
날짜 요소 추출 dt
# df의 Date열의 날짜를 원하는 대로 추출
df['Date'].dt.year # 연도
df['Date'].dt.month # 월
df['Date'].dt.day # 일
df['Date'].dt.weekday # 요일
df['Date'].dt.day_name() # 요일 이름
df['Date'].dt.isocalendar().week # 누적 주차
시간에 따른 흐름 추출하기: Time Lag
.shift()
시계열 데이터에서 시간의 흐름 전후로 정보를 이동시킬 때 사용
df['Amt_lag'] = temp['Amt'].shift() # default = 1
# 전날 매출액을 추가한다.
df['Amt_lag2'] = temp['Amt'].shift(2)
# 전전날 매출액을 추가한다.
df['Amt_lag_1'= = temp['Amt'].shift(-1)
# 다음날 매출액 열을 추가한다.
rolling + 집계함수
시간의 흐름에 따라 일정 기간 동안 평균을 이동하면서 구하기
rolling(n)
n의 기본값은 1
min_periods: 최소 데이터 수
df['Amt_1'] = df['Amt'].rolling(7).mean()
# Amt열의 7개 평균을 구한다. 7개가 되지 않는 경우 NaN으로 표시
df['Amt_2'] = df['Amt'].rolling(7, min_periods = 1).mean()
# Amt열의 7개 평균을 구한다. 최소 데이터수는 1개이므로 NaN값이 표시되지 않는다.
diff
특정 시점 데이터, 이전 시점 데이터와의 차이 구하기
df['Amt1'] = df['Amt'].diff()
# default = 1
df['Amt2'] = df['Amt'].diff(2)
# 현재 행보다 2행 앞의 데이터와의 차이를 구한다.
'kt aivle' 카테고리의 다른 글
[Python] API (0) | 2024.06.03 |
---|---|
[Python] CRISP-DM (1) | 2024.06.02 |
[Python] 데이터프레임 결합 (1) | 2024.06.02 |
[Python] 데이터프레임 변경 (0) | 2024.06.02 |
[Python] List (0) | 2024.06.01 |