0Pricing
Learn AI with Python · 강의

Pandas의 시계열

DatetimeIndex, resample(), rolling(), shift(), 날짜 범위 생성과 리샘플링을 다룹니다.

Pandas의 시계열은(는) CoddyKit의 무료 Learn AI with Python 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Learn AI with Python 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Learn AI with Python 강의에는 총 4개의 강의가 포함되어 있습니다.

판다스의 시간 처리

pandas는 날짜 및 시간 데이터를 기본적으로 지원합니다. 문자열을 타임스탬프로 변환하고 시간을 기준으로 색인하면 리샘플링, 이동 창, 지연 특성을 사용할 수 있습니다.

to_datetime으로 구문 분석하기

pd.to_datetime는 문자열이나 숫자를 적절한 Timestamp 객체로 변환하며, 가장 일반적인 형식은 자동으로 추론합니다.

import pandas as pd
d = pd.to_datetime(["2026-01-01", "2026-01-05", "2026-02-10"])
print(d)
print(d.dtype)   # datetime64[ns]

date_range로 날짜 생성하기

pd.date_range는 일정한 간격의 타임스탬프 시퀀스를 만듭니다. freq 코드는 간격을 제어합니다. 예를 들어 D는 일, H는 시간, M은 월말을 뜻합니다.

rng = pd.date_range("2026-01-01", periods=5, freq="D")
print(rng)
# 2026-01-01 ... 2026-01-05

DatetimeIndex 만들기

날짜 및 시간 열을 색인으로 설정하면 DatetimeIndex가 생성되며, 이를 통해 시간을 인식하는 슬라이싱과 resample/rolling 도구를 사용할 수 있습니다.

ts = pd.Series([10, 12, 9, 15, 11],
               index=pd.date_range("2026-01-01", periods=5, freq="D"))
print(ts)

부분 문자열로 슬라이싱하기

DatetimeIndex를 사용하면 부분적인 날짜로 슬라이싱할 수 있습니다. 연도나 월 문자열을 지정하면 일치하는 모든 행이 선택됩니다.

monthly = pd.Series(range(60),
    index=pd.date_range("2026-01-01", periods=60, freq="D"))
print(monthly["2026-02"].head())   # all of February

resample로 다운샘플링하기

resample은 시간을 기준으로 하는 groupby입니다. 더 큰 간격으로 다운샘플링한 다음 집계합니다. 예를 들어 일별 데이터를 주별 합계로 만들 수 있습니다.

weekly = monthly.resample("W").sum()
print(weekly.head())

업샘플링하고 채우기

FINER 간격으로 리샘플링하면 빈 구간이 생깁니다. .ffill()과 함께 사용하면 마지막 값을 이후 구간으로 전달할 수 있습니다.

hourly = ts.resample("12H").ffill()
print(hourly.head())

이동 창

rolling(window)은 이동하는 창에서 통계량을 계산합니다. 이는 잡음이 있는 시계열을 평활화하는 이동 평균의 기반입니다.

roll = monthly.rolling(window=7).mean()
print(roll.head(10))   # first 6 are NaN (not enough history)

이동 창의 변형

이동 창에서는 mean, sum, std, 최솟값, 최댓값 등 모든 축약 연산을 사용할 수 있습니다. 7일 이동 std는 최근 변동성을 측정합니다.

vol = monthly.rolling(7).std()
print(vol.tail())

shift로 지연시키기

shift(n)은 값을 n개 기간만큼 앞으로 이동하여 지연 특성을 만들고 기간별 변화를 계산할 수 있게 합니다.

df = pd.DataFrame({"sales": [100, 110, 105, 130]})
df["prev"] = df["sales"].shift(1)
df["pct_change"] = (df["sales"] - df["prev"]) / df["prev"]
print(df)

날짜 구성 요소 추출하기

.dt 접근자는 연도, 월, 요일 같은 구성 요소를 제공하며, 이러한 값은 모델 특성으로 유용합니다.

s = pd.Series(pd.date_range("2026-01-01", periods=3, freq="D"))
print(s.dt.dayofweek)   # 0=Monday
print(s.dt.month)

확인 문제

시계열 지식을 확인해 보십시오.

복습

시계열 도구 모음:

  • 구문 분석에는 pd.to_datetime, 생성에는 pd.date_range를 사용합니다
  • DatetimeIndex를 사용하면 부분 문자열 슬라이싱이 가능합니다
  • 업샘플링과 다운샘플링에는 resample(freq).agg()를 사용합니다
  • 이동 통계량에는 rolling(window)을 사용합니다
  • 지연 값에는 shift(n), 날짜 구성 요소에는 .dt를 사용합니다

자주 묻는 질문

“Pandas의 시계열” 강의는 무료인가요?

네 — “Pandas의 시계열” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Learn AI with Python 강의 전체를 잠금 해제할 수 있습니다. Learn AI with Python 강의에는 총 4개의 강의가 포함되어 있습니다.

“Pandas의 시계열”에서 뭘 배우나요?

DatetimeIndex, resample(), rolling(), shift(), 날짜 범위 생성과 리샘플링을 다룹니다. 브라우저에서 직접 실행하는 실습 코드로 Learn AI with Python을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Learn AI with Python을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Learn AI with Python은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.

“Pandas의 시계열” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Learn AI with Python 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Learn AI with Python 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. GroupBy와 집계
  2. 피벗 테이블과 교차 집계
  3. 고급 병합 및 결합
  4. Pandas의 시계열
← Learn AI with Python(으)로 돌아가기